将表单输入复制到另一个表单

Copy form input to another form

本文关键字:表单 另一个 输入 复制      更新时间:2023-09-26

我有一个表单

<form name="search" action="">
    <label>Job No:</label> 
    <input type="text" name="job" id="job" value=""/> 
    <label>Project:</label> 
    <input type="text" name="project" id="project" value=""/> 
    <input type="submit"  class="search_button" value="Search" /> 
</form>

和第二种形式

<form name="search2" action="">
    <label for="from">Start Date:</label> 
    <input type="text" name="from" id="from"  value=""/> 
    <label for="to" >End Date:</label> 
    <input type="text" name="to" id="to"  value="" /> 
    <input type="submit"  class="search_button" value="Search+" />
</form>

是否有一种方法来填充form2与输入字段在form1当搜索按钮form2被点击。我的实现要求我不加入这两种形式在一起。由于

<form name="search2" action="">
   <label for="from">Start Date:</label> 
   <input type="text" name="from" id="from"  value=""/> 
   <label for="to" >End Date:</label> 
   <input type="text" name="to" id="to"  value="" /> 
   <input type="hidden" name="job2" id="job2"/>
   <input type="submit"  class="search_button" value="Search+" />
</form>
<script>
    $('#job').change(function(){
         $('#job2').val( $('#job'));
    });
</script>

同样第二个字段

在form2中使用与form1中的元素匹配的隐藏变量。在表单提交中,您可以使用javascript获取值,然后提交表单。

是的,在onsubmit处理程序的形式执行JavaScript代码读取字段从form1和写入值到form2。返回false,这样你就不会提交form2了,假设你想做的只是复制。

有趣的是,两个表单的字段名不同。但是如果你想复制,它只是JavaScript。

试试这个

$("form[name='search2']").submit(function(){
  var form1 = $(this);
  var form2 = $("form[name='search']");
  //Here read all the input elements from form2 and copy into form1 element.
});
$form1=$('form[name="search"]');
$form2=$('form[name="search2"]');
$form1.find('.search_button').bind('click', function(e){
    e.preventDefault();
    $form2.children().not('.search_button').each(function(i){
        $(this).clone().appendTo($form2);
    });
});