Skip to main content
 首页 » 编程设计

jquery之定义何时触发 onclick

2026年10月29日38jpfss

我遇到了一些小问题。我有一个表单,并且我在系统中映射表单的字段。表单的按钮会自动获得一个像这样的 onclick 事件

window.location='http://www.something.com/test.html?vs=ZWJhMDAzMzktMTNkYi00ODRkLTgxYmQtNjQwYTU5MDIyZWE3OzA6ODc5NjY2NzoxMjg2NzUyNDM3NDI6OTAxNzM0MzA1OjkwMTczNDMwNTsS1' 

它添加了一个需要的 vs 变量。问题是我需要表单有一个输入类型按钮,而不是提交。我正在使用 JQuery 验证,并且我用它来触发表单提交

$("#btn-default2").click(function() { 
        $("#myform").submit(); 
    }); 

现在的问题是,由于 onclick 事件,验证会快速触发,然后 onclick 事件会进行重定向。如果表单有效,我只需要此重定向。有什么方法可以停止 onclick 事件,并将其移至我的函数中,在其中检查表单是否有效?

谢谢

请您参考如下方法:

针对您的问题的程序性解答,

var btn = $("button.validate"); 
var x = btn.attr("onclick"); //get the onclick and store it in a variable. 
btn.attr("onclick", ""); //remove the onclick attribute for that button 
btn.click(function() { 
    //Now do validations for your button. 
    if ($("input[type='text']").val() == "10") {  
        eval(x); //If the form fields passed the validation 
        //then trigger the redirect using eval 
    } 
}); 

DEMO