3
A
回答
3
下面的功能應該幫助你:
$(function(){
// Hide submit button if either field is empty
$('form input').keyup(function(){
if($('#input1').val() == "" || $('input2').val() == ""){
$('#submit').hide();
}
else {
$('#submit').show();
}
});
// Don't submit form if either field is empty
$('form').submit(function(){
if($('#1').val() == "" || $('#2').val() == ""){
return false;
}
});
});
順便說一句,你需要使用CSS(display:none
)最初隱藏你的提交按鈕。
0
在不以基本javascript參考:
<input type="text" id="input-1" onkeyup="submitChange();" />
<input type="text" id="input-2" onkeyup="submitChange();" />
<input type="submit" id="submit" style="display: none;" />
<script type="text/javascript">
inputOne = document.getElementById("input-1");
inputTwo = document.getElementById("input-2");
inputSubmit = document.getElementById("submit");
function submitChange()
{
if(inputOne.value == "" || inputTwo.value == "")
{
inputSubmit.style.display = "none";
}
else
{
inputSubmit.style.display = "block";
}
}
</script>
0
$('#inputid').keyup(function() {
if ($(this).val().length > 0) {
$('#submitbutton').show();
} else {
$('#submitbutton').hide();
}
});
多個:
$('#inputid1,#inputid2, etc...').keyup(function() {
var hidden = false;
$('#inputid1,#inputid2, etc...').each(function() {
if ($(this).val().length == 0) {
hidden = true;
}
})
if (hidden) {
$('#submitbutton').hide();
} else {
$('#submitbutton').show();
}
});
0
2
我建議在窗體本身使用一個事件處理程序,並檢查所有必填字段。爲了讓它更抽象一點,如果你可以用一些屬性標記你的輸入,這將是很好的。示例解決方案如下:
$('#formNode').keyup(function(e){
var invalid = false;
$(this).children().each(function(i,child){
if(($(child).attr("isReq") == "true")
&& child.value.length == 0
){
invalid = true;
}
});
$("#submitButton")[invalid ? "hide" : "show"]();
});
<form id="formNode">
<input type="text" isReq="true"/>
<input type="text" isReq="true"/>
<input type="text" isReq="true"/>
<input type="submit" value="Submit" style="display:none" id="submitButton"/>
</form>
正如你所看到的,要檢查節點每一次,你只應與屬性isReq標記它和腳本將完成它的工作適合你。
相關問題
- 1. 隱藏提交按鈕並在提交後顯示圖像
- 2. 隱藏提交按鈕
- 3. 提交後隱藏提交按鈕?
- 4. jQuery來隱藏虛擬按鍵和顯示提交按鈕
- 5. 隱藏,顯示,隱藏/ SHOWALL按鈕
- 6. 隱藏提交按鈕被按下
- 7. 如何顯示/隱藏數組提交按鈕複選框
- 8. 如何隱藏提交按鈕,如果表顯示錯誤
- 9. jQuery的:隱藏/顯示按鈕和DIV上提交
- 10. Docusign顯示/隱藏按鈕
- 11. 顯示/隱藏按鈕
- 12. 顯示/隱藏按鈕javascript
- 13. javascript顯示/隱藏按鈕
- 14. 顯示隱藏按鈕
- 15. 顯示/隱藏按鈕
- 16. sencha隱藏顯示按鈕
- 17. 顯示/隱藏按鈕2
- 18. 點擊後隱藏提交按鈕
- 19. 隱藏在IE7提交按鈕與CSS
- 20. 使用Javascript隱藏提交按鈕
- 21. 隱藏提交按鈕與offline.js
- 22. 隱藏提交表單的按鈕
- 23. jQuery提交按鈕隱藏表格
- 24. 點擊後隱藏提交按鈕
- 25. 隱藏/顯示按鈕上的UITextField按
- 26. 表單提交後隱藏/顯示Div?
- 27. 顯示/隱藏的div提交
- 28. 使用回車鍵/隱藏提交按鈕提交表單
- 29. jquery顯示/隱藏按鈕和工具提示
- 30. 按鈕點擊顯示/隱藏工具提示
不太確定這一點,但如果你隱藏提交按鈕並按回車鍵,表單是否仍然會發布?您最好在提交時驗證表單,而不是完全阻止提交。 – Paddy 2009-12-18 09:25:09
@ Paddy:你說得對。如果按下「Enter」,即使字段留空,表單仍然會發布。爲了防止這種情況發生,我在下面編輯了我的答案。 – BenTheDesigner 2009-12-18 09:58:07