我在表单中有一个文本框,然后此复选框被聚焦,我按下输入表单已提交。但这不是我想要的行为。我想验证表单并仅在单击某个链接或在文本字段外按Enter键时手动发送。这是我的表格代码
<form action ="<?php echo $this->url(array('controller' => 'Queue','action' => 'checkinupcoming'))."/?confirmnumber=$this->confNumber&clientid=$this->clientId";?> " data-ajax="false" method= "post" class="checkin-form">
<h3>Customer Details</h3>
<ul class="form" style="margin: 10px 0 15px 27px">
<li id="descriptionLiId" class="first last descriptionLi">
<label id="lbldescriptionId" class="lbldescription">Description</label>
<input id="descTextId" class="descriptionText" tabindex="1" type="text" name="description" title="Enter visually identifying description" value="Enter visually identifying description" onfocus="onFocusBehavior(this);" onblur="onBlurBehavior(this);" />
</li>
</ul>
<h3 id="hdrnotesId" class="hdrnotes">Notes</h3>
<ul class="form">
<li id="notesListId" class="first last notesList">
<textarea id="notesId" class="text-area notes" tabindex="1" name="notes"></textarea>
</li>
</ul>
</form>
我通过序列化输入并发送jquery ajax请求来提交表单。我想在文本字段聚焦时禁用输入按钮上的表单提交
答案 0 :(得分:0)
通过禁用输入按
解决了这个问题$('.descriptionText').bind('keypress', function (e){
if(e.keyCode == 13){
return false;
}
return true;
});
答案 1 :(得分:0)
一个简单的解决方案是在表单标记处使用onsubmit="return false"
,因此不需要额外的jQuery。
<form action="" data-ajax="false" method= "post" class="checkin-form" id="form1" onsubmit="return false">
但使用此方法时要小心,您应该手动提交表单,如下所示:
<input type="button" value="manual submit" onclick="document.getElementById('form1').submit()" />
关于您的代码请注意,建议使用e.which而不是e.keycode
It is recommended to watch event.which for keyboard key input.