jQuery ajax无限调用,在控制台中显示太多的递归错误

时间:2014-11-06 07:26:48

标签: javascript jquery ajax validation

我正在使用jQuery.validationEngine插件。我有一个以下的ajax函数来检查字段的重复唯一值。



function _is_unique(caller) {
    var value = jQuery(caller).val();
    var field_id = jQuery(caller).attr('id');
    var field_name = jQuery(caller).attr('placeholder');

    if (value != '') {
        var uniqueObject = new Object();
        uniqueObject.field_id = field_id;
        uniqueObject.value = value;
        var uniqueString = JSON.stringify(uniqueObject);

        var getUrl = window.location;
        //console.log(getUrl);
        var baseUrl = getUrl.protocol + "//" + getUrl.host + "/" + getUrl.pathname.split('/')[1];

        jQuery.ajax({
            type: "POST",
            url: baseUrl + "/dashboard/check_unique",
            data: uniqueObject,
            async: false,
            cache: false,
            dataType: "text",

            success: function(msg) {
                if (msg == "exist") {
                    isError = true;
                    promptText += " This " + field_name + settings.allrules["is_unique"].alertText + "<br />";
                }
            }
        });
    }
}
&#13;
&#13;
&#13;

如果字段值存在于服务器中,那么从服务器返回&#34;存在&#34;否则我回来&#34; notexist&#34;。 现在,在运行我的ajax脚本时无限调用。请问有什么我应该做的,以阻止我的ajax调用的无限循环。

被修改
这是表单提交功能。它也显示

  

太多的递归

控制台中出现

错误。我有任何机会在这里遇到问题吗?

&#13;
&#13;
$('#searchform').on('submit', function(e){
      
        	var validateError ='';	
				var id='';

				var fieldError = [];
				$('#searchform :input:text').each(function(){
				    id = $(this).attr('id');
				   validateError =    jQuery.fn.validationEngine.loadValidation(document.getElementById(id));
				  if(validateError)
				  { fieldError.push(id); 
				  
				  }
				  
				});
				if(fieldError.length!=0)
				{
				  return false;
				}
				else{
					$("form#searchform" ).submit();
					return true;
				}
		});
	
	});
&#13;
&#13;
&#13;

0 个答案:

没有答案