首页 > 解决方案 > jQuery无法从另一个按钮单击触发按钮单击

问题描述

我的目标是用另一个按钮替换一个按钮,但我遇到了一些问题。我能够触发第一个按钮单击,并且可以通过第二个按钮单击引起警报,但是由于某种原因,当我尝试在第二个按钮的单击事件处理程序中触发第一个按钮单击时,它不会工作。我究竟做错了什么?在某些情况下,我在 Powerapps 门户中通过添加内容片段来执行此操作。

$(window).load(function() {

     //Code to Add Custom 'Register' Button (and Hide the original one- currently commented out)
     $('#SubmitButton').after('<input type="submit" name="ctl00$ctl00$ContentContainer$MainContent$MainContent$mySubmitButton" value="Register" id="mySubmitButton" class="btn btn-primary">');

     //$('#SubmitButton').hide(); *THIS WORKS*
     //$("#SubmitButton").click(); *THIS ALSO WORKS*

     $("#mySubmitButton").click(function()
     {
          //window.alert('yes!'); *THIS WORKS*
          $("#SubmitButton").click(); // *THIS DOES NOT WORK*
     });


});

标签: javascripthtmljquery

解决方案


您需要防止在单击按钮时阻止表单提交的默认操作。

$("#mySubmitButton").click(function(e){
    e.preventDefault(); 
    $("#SubmitButton").click();
});

或者,您可以将按钮的类型设置为"button"默认情况下单击它不会提交表单。

$('#SubmitButton').after('<input type="button" name="ctl00$ctl00$ContentContainer$MainContent$MainContent$mySubmitButton" value="Register" id="mySubmitButton" class="btn btn-primary">');

推荐阅读