如何在html或javascript上提交后再打开另一个提交表单?

时间:2015-08-31 09:33:26

标签: javascript jquery html forms

我正在尝试打开另一个表单以在提交后获得输入。在我的代码中,我想编辑我的数组中的一个节点,并通过获取第一个输入,我让程序找到我的节点进行编辑。如果输入有效 - 输入是我的数组中的一个节点 - 我希望它在与第一个节点相同的位置打开另一个节点。我怎么能这样做?

<p>
  <a href="#" style="font-size: 20px" onclick="toggle_visibility('editNodeForm');">EDIT AN EXISTING NODE</a> 
</p>
<form action="#" style="display: none;" id="editNodeForm">ID or Name:
  <input type="text" id="toEdit" size="20" style="width: 50%; height: 2em;">
  <br />
  <br />
  <button type="button" class="myButton" form="editNodeForm" style="width: 50%;" onclick="editExistingNode();">Submit</button>
  <br />
  <br />
</form>

2 个答案:

答案 0 :(得分:0)

我要做的是将所有字段放在表单中,然后用div分隔步骤。

在页面加载时,隐藏所有步骤(第一步除外)。单击按钮后,将显示下一步。

最后一步没有按钮,只有一个提交按钮,使其触发表单。

&#13;
&#13;
$(function() {
  $('form>div:not(:first)').hide(); /* hide all but first step */
  
  $('form').on('click', 'button', function(e) {
    e.preventDefault();
    var currDiv = $(this).parent() ,
        nextDiv = parent.next('div');
    $(currDiv).hide();
    $(nextDiv).show();
  });
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form>
  <div>
    Step 1 / 3
    Add some value: <input type="text" /><br />
    <button>Next step</button>
  </div>
  <div>
    Step 2 / 3
    Add some value: <input type="text" /><br />
    <button>Next step</button>
  </div>
  <div>
    Step 3 / 3
    Add some value: <input type="text" /><br />
    <input type="submit" value="Save form" />
  </div>
</form>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

尝试替换

nextDiv = parent.next('div');

使用:

nextDiv = $(this).parent().next('div');

在上述评论的代码中,如果它不起作用