>我使用 curl 解析了一个页面,它包含一些复选框和一个"全选"和一个"提交"按钮。单击该按钮会选中每个复选框."全选"按钮会触发一个 javascript 函数,该函数实际上选中了所有复选框。
现在我需要单击"全选"和"提交"按钮。我该怎么做??
这是按钮代码:
input type="button" onclick="SelectAll(137)" value="Select All"
这是 js 函数:
function SelectAll(n)
{
for(i=0;i<n;i++)
document.getElementById("ch"+i).checked=true;
}
你不能。如果必须使用 cURL,则必须自己手动创建 POST 请求。这将涉及查找所有复选框的名称并在 POST 正文中发送一堆checkbox1=on&checkbox2=on&...
。有关通过 cURL 和 PHP 进行 POST 请求的一般示例,请参见 http://davidwalsh.name/execute-http-post-php-curl。
另一种选择是使用Selenium Web Driver之类的东西,它几乎允许您编写像Firefox这样的Web浏览器脚本,可以运行JavaScript,点击内容等。
将一个参数与你的 Curl 请求一起传递,该参数由 jQuery 在其 $(document).ready() 上解析。 有一些插件可以帮助解析参数。
类似的东西
$(document).ready(function(){
var buttonPress = $.param("buttonPress");
if (buttonPress == true)
$("#myButton").click();
});