我有一个简单的表单,其中包含两个字段,其数据正在使用jquery对照密钥表上的数据库进行验证。我还有一个按钮,该按钮当前根据在这两个字段中输入的字符数启用或禁用。两个jquery函数返回两个字段的“接受”或“取消”图像。我想只在两个函数都返回接受图像时启用按钮,或者我甚至可以让它们与它一起返回true,这不会有问题。我只想知道如何根据两个不同的ajax请求的返回值计算本地结果。
这两个函数可以根据数据库验证字段。
$("#agentName").keyup(function(){
var agentName = $("#agentName").val();
if(agentName.length > 3)
{
$("#agt-name-result").html(ajax_load).load(loadUrl, "val="+agentName+"&fld=agent_name");
}
else{
$("#agt-name-result").html("<img src=\"images/cancel.png\" />");
}
});
$("#agentSource").keyup(function(){
var agentSource = $("#agentSource").val();
if(agentSource.length > 9)
{
$("#agt-src-result").html(ajax_load).load(loadUrl, "val="+agentSource+"&fld=agent_url");
}
else{
$("#agt-src-result").html("<img src=\"images/cancel.png\" />");
}
});
这是验证按钮的功能
$("#agentName,#agentSource").keyup(function(){
var validate;
var agentName = $("#agentName").val();
var agentSource = $("#agentSource").val();
if((agentName === "") || (agentSource === "") || (agentName.length < 3) || (agentSource.length < 10))
{
validate = false;
}
else { validate = true; }
if(validate === true) {
$("#addAgntBtn").removeAttr("disabled");
$("#addAgntBtn").removeClass("dialog-btn-disabled").addClass("dialog-btn");
}
else {
$("#addAgntBtn").attr("disabled", "disabled");
$("#addAgntBtn").removeClass("dialog-btn").addClass("dialog-btn-disabled");
}
});
有什么想法吗?
答案 0 :(得分:1)
我会使用setInterval来轮询两个ajax调用放置其结果的$.data()
值。你必须注意并发访问,但它应该工作