[英]Disable submit button until field is validated on database
我正在使用AJAX来验证在表单字段中输入的代码,如果它有效,则会显示一条消息,指出它是有效的,否则他们会收到一条消息,指出它是无效的。 这部分没有问题。 我要做的下一件事情是禁用提交按钮,直到代码有效为止,否则用户可以输入他们想要的任何内容并仍然转到下载页面。 我的脚本如下:
$(document).ready(function(){
$("#orgname").change(function() {
var usr = $("#orgname").val();
if(usr.length >= 2)
{
$("#status").html('<img align="absmiddle" src="images/loader.gif" /> Checking Code...');
$.ajax({
type: "POST",
url: "checkcode.cfm",
data: "orgname="+ usr,
success: function(msg){
$("#status").ajaxComplete(function(event, request, settings){
if(msg == 'OK')
{
$("#orgname").removeClass('object_error'); // if necessary
$("#orgname").addClass("object_ok");
document.getElementById("formsubmit").removeAttribute("disabled");
$(this).html(' <img align="absmiddle" src="images/accepted.png" /> ');
}
else
{
$("#orgname").removeClass('object_ok'); // if necessary
$("#orgname").addClass("object_error");
$(this).html(msg);
document.getElementById("formsubmit").setAttribute("disabled", "disabled");
}});}});}
else
{
$("#status").html('The Code should have at least 2 characters.');
$("#orgname").removeClass('object_ok'); // if necessary
$("#orgname").addClass("object_error");
}});});
我也是AJAX的新手。 如您所见,我将启用和禁用脚本放置在正确的位置,但是它不起作用。 如果在按钮上使用样式或禁用属性,它将保持禁用状态。 同样,如果在加载此页面时使用JS禁用按钮,则在整个过程中它将保持禁用状态。
任何帮助表示赞赏。
使用$('#formsubmit').prop('disabled',true);
和$('#formsubmit').prop('disabled',false);
分别禁用和启用该按钮。 jQuery将处理所有浏览器差异。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.