Javascript 通过Ajax传递参数

Javascript 通过Ajax传递参数,javascript,asp.net,ajax,Javascript,Asp.net,Ajax,我正在做一个项目,面临一个问题。无法找到我的代码中的问题。下面是我的代码,不知道为什么Ajax url无法获取函数ReceivedMessageByIndexNumber of default.aspx。多谢各位 JavaScript: ReceivedMessage(1); function ReceivedMessage(indexNumber) { $.ajax({ type: "Post", ur

我正在做一个项目,面临一个问题。无法找到我的代码中的问题。下面是我的代码,不知道为什么Ajax url无法获取函数ReceivedMessageByIndexNumber of default.aspx。多谢各位

JavaScript:

    ReceivedMessage(1);

    function ReceivedMessage(indexNumber) 
    {
        $.ajax({
            type: "Post",
            url: "Default.aspx/ReceivedMessageByIndexNumber?indexNumber="+indexNumber,
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (response) {
                var data = response.d;
                for (var i = 0; i < data.length; i++) {
                    alert(data[i]);
                }
            },
            failure: function (msg) {
                $('#output').text(msg);
            }
        });
    }

这是一个HTTPPOST方法,但您试图像传递HTTPGET一样传递参数。我从未见过它写在可以像HTTP GET一样在URL中指定参数的地方

注意,我在下面添加了JSON数据行。这就是满足您的post请求的原因

data: '{textIndex: "' + indexNumber + '" }',
整个功能:

function ReceivedMessage(indexNumber) 
{
    $.ajax({
        type: "Post",
        url: "Default.aspx/ReceivedMessageByIndexNumber",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        data: '{textIndex: "' + indexNumber + '" }',
        success: function (response) {
            var data = response.d;
            for (var i = 0; i < data.length; i++) {
                alert(data[i]);
            }
        },
        failure: function (msg) {
            $('#output').text(msg);
        }
    });
}
函数接收消息(indexNumber)
{
$.ajax({
类型:“Post”,
url:“Default.aspx/ReceivedMessageByIndexNumber”,
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
数据:“{textIndex:”+indexNumber+“}”,
成功:功能(响应){
var数据=响应d;
对于(变量i=0;i
您正在执行post请求。因此,您需要在请求正文中添加参数,而不是url。所以改变你的ajax调用

function ReceivedMessage(indexNumber) 
    {
        $.ajax({
            type: "Post",
            url: "Default.aspx/ReceivedMessageByIndexNumber?indexNumber="+indexNumber,
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            data: "{'textIndex': " + indexNumber+ "}",
            success: function (response) {
                var data = response.d;
                for (var i = 0; i < data.length; i++) {
                    alert(data[i]);
                }
            },
            failure: function (msg) {
                $('#output').text(msg);
            }
        });
    }
函数接收消息(indexNumber)
{
$.ajax({
类型:“Post”,
url:“Default.aspx/ReceivedMessageByIndexNumber?indexNumber=“+indexNumber,
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
数据:“{'textIndex':”+indexNumber+“}”,
成功:功能(响应){
var数据=响应d;
对于(变量i=0;i
函数接收消息(indexNumber)
{
$.ajax({
类型:“Post”,
url:“/Default/ReceivedMessageByIndexNumber/”,
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
数据:{textIndex:indexNumber},
成功:功能(响应){
var数据=响应d;
对于(变量i=0;i
您的querystring参数在代码中的名称(indexNumber)与服务器上预期的名称(textIndex)不同。我这样做了,但同样的问题@major Mann我的答案对您有用吗?或者发生了什么?如果它确实有效,你能把它标记为答案吗?谢谢。这对你有用吗?如果是这样的话,你最好把它作为答案。
function ReceivedMessage(indexNumber) 
    {
        $.ajax({
            type: "Post",
            url: "Default.aspx/ReceivedMessageByIndexNumber?indexNumber="+indexNumber,
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            data: "{'textIndex': " + indexNumber+ "}",
            success: function (response) {
                var data = response.d;
                for (var i = 0; i < data.length; i++) {
                    alert(data[i]);
                }
            },
            failure: function (msg) {
                $('#output').text(msg);
            }
        });
    }
function ReceivedMessage(indexNumber) 
{
    $.ajax({
        type: "Post",
        url: "/Default/ReceivedMessageByIndexNumber/",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        data: { textIndex: indexNumber },
        success: function (response) {
            var data = response.d;
            for (var i = 0; i < data.length; i++) {
                alert(data[i]);
            }
        },
        failure: function (msg) {
            $('#output').text(msg);
        }
    });
}