jQuery AJAX将变量传递给webmethod

时间:2016-03-21 12:10:40

标签: jquery asp.net ajax

我正在尝试使用带有ajax的Jquery将变量传递给Web方法。我对传递变量的语法感到困惑,并尝试了许多不同的形式但没有成功。

网络方法是:

public string GetStudentName(string studentID)
{
    string name = string.Empty;
    int id = 0;

    // convert the string to an integer
    id = int.Parse(studentID);

    // If the studentID is withinrange 
    if (id < 0 || id >= _StudentList.Count)
    {
        name = "Not Found";
    }
    else
    {
        name = _StudentList[id].LastName + ", " + _StudentList[id].FirstName;
    }

    return name;
}

学生列表在代码的前面填充。

jQuery代码是:

$('#cmdLookup').click(function ()
{
    var sid = $("#<%=txtID.ClientID%>").val();

    $.ajax({

       type: "POST",

       url: "Services/WSStudent.asmx/GetStudentName",

       contentType: "application/json; charset=utf-8",

       data: sid,

       dataType: "json",

       success: function (result)
       {
           $('#<%=txtStudentName.ClientID%>').text(result.d);
       },
       error: function (XMLHttpRequest, textStatus, errorThrown)
       {
           alert('Error: ' + XMLHttpRequest.responseText);
       }
   })
})

如果有人能告诉我传递sid变量的正确语法,那将是很好的。

1 个答案:

答案 0 :(得分:1)

尝试data: { studentID: sid }并确保sid变量具有您想要的值