0

我已使用 jquery 验证来检查部门名称是否已存在于特定组织中。但它没有返回正确的结果。请有人帮助我。

这是我的jQuery:

$(document).ready(function(){
var validator = $("#frmAddDepartment").validate({
    errorElement:'div',
    rules: {
        organization:{
            required:true
        },
        department: {
            required: true,
            allowChars:true,
            //remote:$('#site_url').val()+"admin/department/check_department/"+$('#department').val()+"/"+$('#Organization').val(),
            checkdeptname:true
        }
    },
    messages: {
        organization:{
            required:languageArray['select_organization']
        },
        department:{
          required:languageArray['enter_department'],
          //remote:jQuery.format(languageArray['dept_exist'])
      }         
    }
});

jQuery.validator.addMethod("allowChars", function(value, element) { 

    var filter = new RegExp(/[^a-zA-Z0-9\-& ]/);

        if(!(filter.test(value)))
        {
            return true;
        }else

            return false;
        },languageArray['please_enter_valid_chars']);

jQuery.validator.addMethod("checkdeptname", function(value, element) {  

    returnResult = false;

    $.ajax({
        url: $('#site_url').val()+"admin/department/check_department",
        type: "GET",
        data:{department:value,organization:$('#Organization').val()},
        success: function (result)
        {
            returnResult = result;
            alert(returnResult);
        }
    });
    //$.get( $('#site_url').val()+"admin/department/check_department", { department:value,organization:$('#Organization').val() }, function(data){alert(data);returnResult = result;} );
    return returnResult;
        },languageArray['dept_exist']);});

PHP控制器的功能:

public function check_department()
{
    $sql_query=$this->department_model->check_department();

    if($sql_query>0)
    {
        echo "false";
    }else
    {
        echo "true";
    }
}
4

1 回答 1

0

我认为,在您的 php 控制器函数中,您将 ture/flase 作为字符串返回,而在 ajax 成功回调函数中,您正在将其与布尔 ture/flase 进行比较。

于 2013-09-25T07:04:49.397 回答