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. 隐藏提交按钮被按下
- 5. jQuery的:隐藏/显示按钮和DIV上提交
- 6. sencha隐藏显示按钮
- 7. 使用Javascript隐藏提交按钮
- 8. jQuery提交按钮隐藏表格
- 9. 隐藏提交表单的按钮
- 10. 隐藏在IE7提交按钮与CSS
- 11. 隐藏/显示按钮上的UITextField按
- 12. 表单提交后隐藏/显示Div?
- 13. 显示/隐藏的div提交
- 14. 使用回车键/隐藏提交按钮提交表单
- 15. jquery显示/隐藏按钮和工具提示
- 16. 按钮点击显示/隐藏工具提示
- 17. jQuery的显示/隐藏按钮来更改工具提示
- 18. 隐藏和显示按钮列表
- 19. 隐藏/显示合拢/展开按钮
- 20. jQuery的显示/隐藏按钮
- 21. Bootstrap按钮组显示/隐藏Div
- 22. JQuery的显示/隐藏按钮家属
- 23. jQuery - 显示和隐藏按钮
- 24. 显示/隐藏文本按钮位置
- 25. jQuery隐藏/显示更多按钮
- 26. 如何显示/隐藏按钮?
- 27. iOS倒计时显示隐藏按钮
- 28. Toogle动画隐藏显示按钮jquery
- 29. Mac OSX开发 - 显示/隐藏按钮
- 30. 显示/隐藏按钮消失
不太确定这一点,但如果你隐藏提交按钮并按回车键,表单是否仍然会发布?您最好在提交时验证表单,而不是完全阻止提交。 – Paddy 2009-12-18 09:25:09
@ Paddy:你说得对。如果按下“Enter”,即使字段留空,表单仍然会发布。为了防止这种情况发生,我在下面编辑了我的答案。 – BenTheDesigner 2009-12-18 09:58:07