0

当按下另一个表单上的按钮时,我正在尝试提交表单。表单将简单地更新,我正在尝试捕获已输入的任何信息。

这就是信息流动的方式。形式实际上并不相同,这只是为了简化概念。

<?

function form(){
    ?>
    <form method="post" id="form1">
    <input type="text" name="textinput"/>
    <input type="submit" name="submit_form1"/>
    </form>

    <?
    $form2 = new forms();  //assume form 2 is setup similarly to form1 and its <form> tags are in that form like they are for form 1
    $forms->get_form2();
    ?>
}

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">

$('#form2').click(function() {
  $('#form1').submit();
});

</script>
<?

我尝试做这样的事情,但它不起作用。假设表单 1 输入了一些内容(但未提交),我想在按下表单 2 上的按钮时捕获这些值。

我也试过这个(我觉得它可以充分发挥作用),但我也没有成功。

$('#form1').submit(function() {
  alert('Handler for .submit() called.');
  return false;
});
4

2 回答 2

1
$(document).ready(function(){
    $('#form2').submit(function(){
        $('#form1').submit();
        return false;
    });
});

如果这是你想要的,你需要用 document.ready() 包装它。虽然这样,你只会提交form1,而不是form2。

于 2012-11-19T02:29:12.993 回答
0

提交表单后,服务器将向客户端返回结果,但是您在这里尝试做的是同时提交 2 个表单(如果我理解正确的话),这根本无法完成。

如果您想在提交另一个表单之前保存一个表单的信息,您将需要发送请求并更新服务器上的会话,或者使用 localstorage 或 cookie 将信息保存在本地,并在加载的新页面上从会话中获取数据或饼干。

于 2012-11-19T02:25:46.403 回答