我试图自动点击链接哪个动作是一个javascript函数。但它不会起作用..
if($submit)
{
echo '<body onload="setTimeout("autoClick();",1000);">';
echo "<a id='linkToClick' onclick='return confirmDialog($id);'>clickme</a>";
echo '</body>';
}
else
echo 'not set';
?>
<script type="text/javascript">
function autoClick(){
var myLink = document.getElementById('linkToClick');
myLink.click();
}
function confirmDialog (id, callback) {
confirmDialogCallback = callback;
$("#idConfirmDialog").modal ("show");
}
</script>
答案 0 :(得分:0)
这里的一个问题是你使用双引号作为属性分隔符和你传递给setTimeout
的参数(请注意语法高亮显示如何搞砸了):
<body onload="setTimeout("autoClick();",1000);">
应该是:
<body onload="setTimeout('autoClick();',1000);">
在您的PHP代码中,这相当于:
echo '<body onload="setTimeout(\'autoClick();\',1000);">';
此外,虽然这不是绝对必要的,但是不建议将字符串值传递给setTimeout
,应该避免使用。你应该改为传递函数:
<body onload="setTimeout(autoClick, 1000);">
如果你这样做,你可以少用一对引号来担心。