如何使用jquery在链接上提交表单?

时间:2014-02-02 13:38:26

标签: javascript php jquery html forms

我正在处理一个网页搜索表单,当他们点击表单顶部的链接时会返回图片和网页结果。

所以我尝试在链接点击上触发表单。示例:如果他们单击图像,则尝试提交带有图像作为选项的表单。在链接上单击我可以创建隐藏的输入,但不会触发提交本身。

在没有隐藏输入的情况下,我也尝试了jQuery("#web_form").submit();,而不是在试图。

HTML& FORM

<span class="web"><a href="#">Web</a></span><span class="image"><a href="#">Image</a></span>

<form method="post" id="web_form" action="<?php echo $_SERVER['PHP_SELF'];?>">  

<input type="submit" value="Search" name="submit"/>
 <?php            
            if (isset($_POST['submit'])) 
            {
                $option = $_POST['searchoption'];
                //perfoming statement based on option
            }
               ?>
    </form>

的jQuery

jQuery(document).ready(function(){

jQuery('.web').click(function () {
  var option  = jQuery("<input type='hidden' name='searchoption'/>");
  option.val(jQuery(this).attr("class"));
  jQuery("#web_form").append(option).submit();  
  return false;
});
});

这里有什么问题?

注意:我在wordpress中尝试这个有意义吗?

问题发布后

编辑

   jQuery(document).ready(function(){    
    jQuery('.web').click(function () {
      var option  = jQuery("<input type='hidden' name='searchoption'/>");
      option.val(jQuery(this).attr("class"));
      jQuery("#web_form").append(option).submit();  
      return false;
    });
     $( "#web_form" ).submit(function( event ) {
          alert( "Handler for .submit() called." );
     });
    });

我尝试了以上操作以确保表单是否已提交,当我点击链接时,我收到了Handler for .submit() called.警告消息。它似乎适用于提交事件,但它没有提交到action字段中的外部网址以及<?php echo $_SERVER['PHP_SELF'];?>的操作。

这里发生了什么?任何想法都会有所帮助。

1 个答案:

答案 0 :(得分:1)

如果您将提交输入的名称更改为“提交”以外的其他名称,则应该可以使用(在Chrome中测试):

<input type="submit" value="Search" name="mysubmit"/>