Javascript表单提交onclick无法在Google Chrome中使用

时间:2013-01-04 22:35:15

标签: php javascript forms

我正在尝试提交一个表格onclick of anchor。这是代码:

function submitLink() {
    document.forms["background-form"].submit();
    return false;
}

此代码适用于FF和IE,但不适用于Chrome。谁知道为什么?我这样调用函数:

<a href="<?php echo "background.php?cred=".$cred['id']; ?>" onclick="submitLink();">Remove</a>

2 个答案:

答案 0 :(得分:2)

您需要从onclick函数返回false以防止默认操作。 否则你只需点击链接即可。

尝试这样

<a href="<?php echo "background.php?cred=".$cred['id']; ?>" onclick="return submitLink();">Remove</a>

我还应该注意,您的链接不是锚链接,锚链接需要fragmentation identifier。您的链接只是一个链接,单击该链接后,浏览器将通过http get请求导航到该链接,从而导致当前页面卸载。

然而,通过jQuery绑定事件处理程序并使用内置的preventDefault功能会更好。

在这里阅读更多相关信息

http://api.jquery.com/event.preventDefault/

答案 1 :(得分:0)

如果您发现onClick事件在Google Chrome上无效,那么可以通过以下方式快速解决问题:

onclick表单ID替换为其名称,例如,假设您有以下内容:

<form id="form1" name="checkform1"

查找JS事件:

onclick="document.form1.cSSld.value=''"

替换为:

onclick="document.checkform1.cSSld.value=''"

全套。它现在适用于所有Web浏览器。