Отправка строкового значения в WebMethod

function EmpCode(empCode) {
    var queryString = "";
    var hasQuerystring = document.URL.indexOf('?');
    if (hasQuerystring != -1) {
        queryString = document.URL.substring(hasQuerystring + 1, document.URL.length);
        if (queryString == 'id=1') {
            $.ajax({
                type: "POST",
                url: "EmployeeBasicInfo.aspx/CheckEmpCode",
                data: "{'empCode':" + empCode + "}",// Sending empCode which is a string
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (msg) {
                    var errorMsg = (msg.d);
                    if (errorMsg != 'NA') {
                        alert(errorMsg);
                    }
                }
            });
        }
    }
}

Вот мой веб-метод

[WebMethod]
public static  string CheckEmpCode(string empCode)
    {
    string empCod = "";
    EmployeeFactory empFactory = new EmployeeFactory();
    empCod = empFactory.CheckCode(empCode);
    return empCod;
}

Когда я отправляю empCode как «11479» или любые целые числа из Ajax, вызывается веб-метод. когда я отправляю empcode как «C1026» или любую строку с символами, тогда веб-метод не вызывается.

Пожалуйста, предложите мне, как передать empCode, который имеет строковое значение.


person Prateek Kulkarni    schedule 07.02.2011    source источник
comment
Пожалуйста, переформатируйте свой вопрос.   -  person The Scrum Meister    schedule 07.02.2011


Ответы (1)


Поместите кавычки вокруг EmpCode. В настоящее время вы отправляете:

data: {'empCode': C1026}

Вам необходимо отправить:

data: {'empCode': 'C1026'}
person Robert Wagner    schedule 07.02.2011
comment
Большое спасибо Роберт. Это было очень полезно для меня - person Prateek Kulkarni; 07.02.2011
comment
Большое спасибо, Роберт. Было очень полезно для меня. - person Prateek Kulkarni; 09.02.2011