两个提交按钮问题--

发布于 2024-12-02 03:38:25 字数 663 浏览 2 评论 0原文

我在一种表单中有两个提交按钮,并且两个提交都链接到一个文本框。 有没有办法在按下 Enter(键盘上)时选择特定的“提交”按钮。

我的html:

<form id="myForm" method="post">
id: 
<input type="text" name="id" id="id"/>
<div id="hidden" style="display: none;">
<label>Age:</label>
<input type="text" name="Age"/><br/>
<input type="submit" id="button2" value="Update"/>
</div> 
<input type="submit" id="button1" value ="Get Info" onclick="document.getElementById('hidden').style.display = ''; this.style.display = 'none'"/> 

代码的小解释: 最初,除了一个提交(“获取信息”)和 id 字段之外,所有部分都将被隐藏。 用户输入 ID 并单击提交(“获取信息”)后,所有其他字段都会出现,并且之前的提交(“获取信息”)将被隐藏。

I have two submit buttons in one form and both the submit are linked to one text box.
Is there a way to select a specific "submit" button when enter(on Keyboard) is pressed.

my html:

<form id="myForm" method="post">
id: 
<input type="text" name="id" id="id"/>
<div id="hidden" style="display: none;">
<label>Age:</label>
<input type="text" name="Age"/><br/>
<input type="submit" id="button2" value="Update"/>
</div> 
<input type="submit" id="button1" value ="Get Info" onclick="document.getElementById('hidden').style.display = ''; this.style.display = 'none'"/> 

Small Explanation of the code:
Initially all the part will be hidden except one submit("Get Info") and id field.
After user enters id and click submit("Get Info") all other fields will appear and the previous submit("Get Info") will be hidden.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

善良天后 2024-12-09 03:38:25

无需了解实现此目的所需的 JavaScript,表单使用的提交按钮是 在规范中定义

本质上,该表单将使用它包含的第一个启用的提交按钮 隐式提交

实际上,听起来您想要做的就是向表单添加一个 onsubmit 处理程序并阻止默认操作(以便您可以显示表单的其余部分)。在事件处理程序中,您只需从表单中删除事件处理程序,以便后续提交表单的调用能够正确发送。

Without getting into the JavaScript necessary to make this happen, the submit button that a form uses is defined in the spec.

Essentially the form will use the first enabled submit button that it contains for implicit submission.

Really, what it sounds like you want to do is add an onsubmit handler to the form and prevent the default action (so you can show the rest of the form). In the event handler, you simply need to remove the event handler from the form so that the subsequent call to submit the form will be sent correctly.

征﹌骨岁月お 2024-12-09 03:38:25

您可以使用 .click() 方法您想要点击的按钮。

document.forms.myForm.id.onkeyup = function (e) {
    e = e || window.event;
    if (e.keyCode == 13) {
        document.forms.myForm.button1.click();
        if (e.preventDefault) {
            e.preventDefault();
        }
        e.returnValue = false;
    }
};

You can use the .click() method on the button you want clicked.

document.forms.myForm.id.onkeyup = function (e) {
    e = e || window.event;
    if (e.keyCode == 13) {
        document.forms.myForm.button1.click();
        if (e.preventDefault) {
            e.preventDefault();
        }
        e.returnValue = false;
    }
};
江湖正好 2024-12-09 03:38:25

我以基本相同的方式解决了另一个问题。这是使用 jQuery 的一个简单解决方案

$('form').bind('submit',function(e){ 
    e.preventDefault(); 
    //do whatever processing you need to, then fire your Get Info button
    $('#buttonToTrigger').trigger('click') 
});

I solved a different problem in essentially the same manner. Here is, using jQuery, a simple solution

$('form').bind('submit',function(e){ 
    e.preventDefault(); 
    //do whatever processing you need to, then fire your Get Info button
    $('#buttonToTrigger').trigger('click') 
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文