javascript - 禁用提交按钮,直到字段在数据库上得到验证

标签 javascript html ajax

我正在使用 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 将处理所有浏览器差异。

关于javascript - 禁用提交按钮,直到字段在数据库上得到验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13994788/

相关文章:

javascript - Video.js 重用 ID - destroy()

javascript - Ajax:将代码注入(inject) Internet Explorer

javascript - 判断HTTP请求的数据类型

javascript - 如何从 android native 代码传递 props 以响应 native

javascript - jquery中的滚动绑定(bind)问题

javascript - 将 JSON 转换为 HTML : Uncaught TypeError: json. forEach 不是函数

php联系表格电子邮件信息

HTML Bootstrap 列未正确对齐

html - 可悬停的导航图标

javascript - 在子菜单中找到选中的复选框