【发布时间】:2016-06-15 05:41:54
【问题描述】:
嗨,我正在WordPress 中创建一个popup plugin,我想在其中禁用我的按钮,该按钮在表单禁用之前,直到我的表单字段为空。我没有使用提交按钮,因为单击提交按钮后它会重新加载我不想这样做的页面,我只是希望它关闭所以我使用button 而不是type="submit"
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="memberModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<a class="close" data-dismiss="modal">×</a>
<h3>Modal header</h3>
</div>
<div class="modal-body">
<form method="post" action="" name="sf-popup" id="sf-popup">
<input type="text" name="sfname" placeholder="Name" class="col-xs-12 col-md-6 sfname">
<input type="tel" name="sfphone" placeholder="Phone Number" class="col-xs-12 col-md-offset-1 col-md-5 sfphone">
<textarea name="message" placeholder="Enter Your Query" class="col-md-12"></textarea>
</form>
</div>
<div class="modal-footer">
<button id="sfpsubmit" class="btn btn-primary sfp_btn" name="submit">Submit</button>
</div>
</div>
</div>
<script>
$("#sf-popup .sfname").keyup(function() {
alert("hmmm");
/* if($(this).val() == '' && $( "#sf-popup .sfphone").val() == ''){
$('#sfpsubmit').attr('disabled','disabled');
} else{
$('#sfpsubmit').removeAttr('disabled');
} */
});
$("#sf-popup .sfphone").keyup(function() {
if ($(this).val() == '' && $("#sf-popup .sfname").val() == '') {
$('#sfpsubmit').attr('disabled', 'disabled');
} else {
$('#sfpsubmit').removeAttr('disabled');
}
});
</script>
</div>
我尝试了很多 javascript 方法,但都不适合我
工作代码 这段代码现在对我有用,谢谢你的帮助 Prakash Rao
jQuery(document).ready(function($) {
setTimeout(function(){
$('#myModal').modal('show');
}, 3000);
$( "#sf-popup .sfname" ).keyup(function() {
if($(this).val() == '' || $( "#sf-popup .sfphone").val() == ''){
$('#sfpsubmit').attr('disabled','disabled');
} else{
$('#sfpsubmit').removeAttr('disabled');
$( ".sfp_btn" ).click(function() {
$('#myModal').modal('hide');
});
}
});
$( "#sf-popup .sfphone" ).keyup(function() {
var sfp_phone = $(this).val();
if(sfp_phone.length > 10){
$(this).val(sfp_phone.substr(0,10));
$('#sfpsubmit').removeAttr('disabled');
}
if(sfp_phone == '' || $( "#sf-popup .sfname").val() == '' || $.isNumeric(sfp_phone) == false ||sfp_phone.length < 10){
$('#sfpsubmit').attr('disabled','disabled');
} else{
$('#sfpsubmit').removeAttr('disabled');
$( ".sfp_btn" ).click(function() {
$('#myModal').modal('hide');
});
}
});
});
【问题讨论】:
-
看看this。答案有很多方法
-
我已经检查过了,但是在这个提交按钮是在表单内,而按钮是在我的问题中已经提到的表单之外
-
您可以通过
preventDefault()preventDefault()在表单中单击提交按钮时禁用页面刷新
标签: javascript jquery html wordpress forms