单击带有 javascript 的提交按钮

Click a submit button with javascript

我有以下脚本:

if( condition ){
  echo '<form action="url" name="myForm" method="post">';
    echo '<input type="hidden" name="val" value="yes">';
    echo '<input type="submit" name="Ok" value="Ok">';
  echo '</form>';
}

当满足条件时,提交按钮会出现,我希望用javascript点击它,这样表单就会被提交,我可以使用隐藏的post值在操作 url."

的页面上

我尝试为提交按钮添加一个 id,然后使用 click();但不是 working.I 也尝试创建一个函数并使用 this.form.submit 但它不起作用,因为操作发生在隐藏值可以是 send.Any 想法之前?

试试这个可能有用。

首先在提交按钮中添加一个 id

echo '<input type="submit" id="submit" name="Ok" value="Ok">';

然后你可以像下面的代码一样在这里使用触发器

$('#submit').trigger(submit);

复制下面这段对我有用的代码

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>


<?php 

$con=4;
if( $con==4 ){
  echo '<form  name="myForm">';
    echo '<input class="a" type="hidden" name="val" value="yes">';
    echo '<input id="submit" type="submit" name="Ok" value="Ok">';
  echo '</form>';
  echo "<script>
  jQuery('form').submit(function(e){
         e.preventDefault();
         var data=$('.a').val();

         $.post(
            'page2.php',
            {value:data},
            function(data){
                alert(data);
            }
         );

     });
         jQuery('form').trigger('submit');


</script>
         ";
}

?>

所以问题是在提交时您没有获得隐藏字段

检查一下fiddle,我刚改了post请求get,看看有没有传递参数,以后可以改post

将表单 ID 设置为 myForm,将按钮 ID 设置为 ok

$(document).ready(function () {
    if ($("#myForm").length) {
      $("#ok").trigger('click');
        var url = window.location.href; 
        console.log(url);
    }

});

我正在做的是在控制台上打印 url。因此请转到您的浏览器控制台查看 url,我正在使用参数 url?val=yes&Ok=Ok 获取 url ]