onclick事件不适用于谷歌浏览器

时间:2015-06-12 18:35:33

标签: javascript html google-chrome

我的表单中有一个提交按钮,我没有使用onsubmit事件,因为我要在同一个表单中添加更多提交按钮。所以我这样做:

<script type="text/javascript" src="../script/script.js"></script>

<form id="form_cad" action="my_php.php" method="post" enctype="multipart/form-data">
    <input type="submit" id="submit1" value="Add" onclick="return confirmMessage();"/>
</form>

function confirmMessage()
{
    var x = confirm("...");
    if(x)
    {
        document.getElementById("my_post_value").value = "val1";
        return true;
    }
    return false;
}

我正在使用最新版本的Firefox,IE和Google Chrome,但在Chrome中,onclick事件无效。

4 个答案:

答案 0 :(得分:0)

而不是onclick按钮的submit属性,onsubmit

<form> <form id="form_cad" action="my_php.php" method="post" enctype="multipart/form-data" onsubmit="return confirmMessage();"> <input type="text" name="email" id="email"> <input type="submit" id="submit1" value="Add"/> </form>

尝试按以下步骤更换代码

float: left;

答案 1 :(得分:0)

它在我的Chrome中工作正常,我在使用提交按钮上的事件时从未遇到任何问题,但由于您使用的是外部js文件,因此您可能希望尝试使用纯文本js解决方案,而不是内联:

见下面的例子:

&#13;
&#13;
function confirmMessage() {
  var x = confirm("Click OK to submit form");
  if (x) {
    return true;
  }
  return false;
}

document.getElementById('submit1').onclick = function() {
  return confirmMessage();
};
&#13;
<form id="form_cad" action="my_php.php" method="post" enctype="multipart/form-data" onsubmit="alert('submitting')">
  <input type="submit" id="submit1" value="Add" />
</form>
&#13;
&#13;
&#13;

表单onsubmit中的提醒仅用于说明事件实际上仅在confirm()返回true时被调用。

答案 2 :(得分:0)

因为你进入一个表单,onsubmit事件会自动触发,一种方法是在调用confirmMessage()之后停止它,返回false。这阻止了事件的传播:

<form id="form_cad" action="my_php.php" method="post"   
    enctype="multipart/form-data" onclick="confirmMessage(); return 
    false;">
    <input type="text" name="email" id="email">
    <input type="submit" id="submit1" value="Add"/>
</form>

答案 3 :(得分:0)

我有一个类似的问题,但我修复了它在“ onclick”功能内启动提交事件的问题。在使用Firefox的情况下,我还阻止了该事件以防止两次启动该事件:

submit_button.click(function(event){
    event.preventDefault();
    var selected_file = $("#id-file-to-upload").val();
    if (selected_file) {
        submit_button.prop('disabled', true);
        submit_button.prop('value', "Loading");
    }
    var upload_form = $("#id-form-to-submit");
    upload_form.submit();
});