Forms 一次点击即可触发多个搜索表单?

Forms 一次点击即可触发多个搜索表单?,forms,submit,Forms,Submit,我有一个带有提交按钮的主搜索表单和几个带有提交按钮的辅助搜索表单 我想做的是,当我输入文本并单击主搜索表单的“提交”按钮时,相同的文本会复制到所有辅助搜索表单中,并且辅助搜索表单的所有“提交”按钮都会自动点击 mainsearch表单的HTML代码如下所示: <form action="query.php" method="get"> Search: <input type="text" name="item" size="30"> <input type="sub

我有一个带有提交按钮的主搜索表单和几个带有提交按钮的辅助搜索表单

我想做的是,当我输入文本并单击主搜索表单的“提交”按钮时,相同的文本会复制到所有辅助搜索表单中,并且辅助搜索表单的所有“提交”按钮都会自动点击

mainsearch表单的HTML代码如下所示:

<form action="query.php" method="get">
Search: <input type="text" name="item" size="30">
<input type="submit" value="send">
</form>
<FORM action="http://www.dpbolvw.net/interactive" method="GET" target="_blank">
<div style="float: left; padding: 0 3px 0 0;">
<INPUT type="text" name="src" size="9"
value="<?php
$input = $_GET['item'];
echo $input;?>"                                     style="width: 110px; height: 22px;margin:0; padding: 0; font-size:140%;">
</div>

<div style="float: left; padding: 0 3px 0 0;">
<input type="image" name="submit" value="GO"                            src="http://images.guitarcenter.com/Content/GC/banner/go.gif"
alt="Search" style="font-size:140%">
/div>

<input type="hidden" name="aid" value="1234"/>
<input type="hidden" name="pid" value="1234"/>
<input type="hidden" name="url" value="http://www.guitarcenter.com/Search/Default.aspx"/>
</form>
下面显示了几个辅助搜索表单之一:

<form action="query.php" method="get">
Search: <input type="text" name="item" size="30">
<input type="submit" value="send">
</form>
<FORM action="http://www.dpbolvw.net/interactive" method="GET" target="_blank">
<div style="float: left; padding: 0 3px 0 0;">
<INPUT type="text" name="src" size="9"
value="<?php
$input = $_GET['item'];
echo $input;?>"                                     style="width: 110px; height: 22px;margin:0; padding: 0; font-size:140%;">
</div>

<div style="float: left; padding: 0 3px 0 0;">
<input type="image" name="submit" value="GO"                            src="http://images.guitarcenter.com/Content/GC/banner/go.gif"
alt="Search" style="font-size:140%">
/div>

<input type="hidden" name="aid" value="1234"/>
<input type="hidden" name="pid" value="1234"/>
<input type="hidden" name="url" value="http://www.guitarcenter.com/Search/Default.aspx"/>
</form>
请注意我放在二次搜索表单的值字段中的php代码:

<?php
$input = $_GET['item'];
echo $input;?>
这会自动将我在主搜索表单中输入的文本复制到辅助搜索表单中。我就这样想出了办法

问题是,当用户在主搜索窗体上单击Enter键或SEND按钮时,在辅助搜索窗体上模拟输入键或鼠标单击GO按钮


谢谢你的洞察力

看看jQuery中的提交事件。那将是你的钥匙

我假设您计划通过ajax提交?否则是徒劳的

所以你可以这样做-

给所有表单指定一个类,我们称之为“ajax\u搜索\u表单”。因此,现在您可以实际挂钩到submit事件

$('.ajax_search_forms').submit(function(){
   var search_string = $('input[name=src]').val();
   $('.ajax_search_forms').each(function(){
     $.ajax({
        url : $(this).attr('action'),
        data : 'search_string=' + search_string,
        success : function(html){
          // Do something with the result
        }
     });
   });

   // Return false is VERY important so that the form submission does not continue
   return false;
});

我不确定这有什么意义,看起来所有这些都是指向不同站点的搜索表单。网络浏览器不允许这样。他们可以一次导航到一个页面。将表单发布到页面时,您正在导航到该页面。因此,您试图同时导航到多个页面。这就像试图同时在巴黎和伦敦一样。我看不出你的计划会像你描述的那样有效

也就是说,您可以使用客户端javascript调用

document.forms[0].submit();
因此,如果你能想出一个计划,不涉及试图让用户在一个窗口中看到所有不同的搜索结果,你可以在你的第一个表单上尝试这个

<form action="query.php" method="get" onSubmit="document.forms(1).Submit();">

您应该按照Brandon的建议使用AJAX JQuery。阅读

例如:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
                    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
  <script src="http://code.jquery.com/jquery-latest.js"></script>

  <script>
  $(document).ready(function(){

    $("#submit").click(function() {

//Do you stuff here like triggering other submits
//Like:
$("input#submit2").click();
$("input#submit3").click();

      return false;
    });

  });
  </script>
</head>
<body>
 <form action="javascript:alert('success!');">
    <div>
      <input type="text" />
      <input type="submit" id="submit" />
    </div>
  </form>

 <form >
    <div>
      <input type="text" />
      <input type="submit" id="submit2" />
    </div>
  </form>

 <form >
    <div>
      <input type="text" />
      <input type="submit" id="submit3" />
    </div>
  </form>

</body>
</html>

嗨,大卫,重点是提交搜索文本到不同的网站自动。因此,在主搜索框中,用户键入文本并单击submit按钮或点击enter。然后,该文本字符串将自动发送到几个使用自己的辅助搜索表单的网站。我尝试了你的代码,但它既不模拟输入键,也不模拟鼠标单击辅助搜索表单。你能进一步解释一下吗?布兰登,我不确定我是否明白你在说什么。你能详细地告诉我我需要做什么吗?是否要将class=ajax\u search\u表单添加到HTML表单标记中?上面的代码是javascript代码吗?我把它围了起来,但什么也没做。。。感谢您提供更多详细信息!:上面的代码是JS代码,构建在jQuery库之上,您需要下载并包含在站点中。然后需要将ajax\u search\u forms类添加到所有表单中。然后提交表单将触发所有表单提交。