Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
WebMethod的Javascript值_Javascript_Asp.net_Ajax_Json_Webmethod - Fatal编程技术网

WebMethod的Javascript值

WebMethod的Javascript值,javascript,asp.net,ajax,json,webmethod,Javascript,Asp.net,Ajax,Json,Webmethod,我试图简单地将一些值从Javascript传递到我的codebehind中进行处理。 我只想将一个数字和消息传递给WebMethod,但根据我所做的更改,会得到不同的错误 JS: 在我的codebehind中,我定义了一个WebMethod,还有一个Message类来保存我的消息 [WebMethod] public static void SendMessage(string message) { //Create a TMessage and deserialize to it

我试图简单地将一些值从Javascript传递到我的codebehind中进行处理。 我只想将一个
数字
消息
传递给
WebMethod
,但根据我所做的更改,会得到不同的错误

JS:

在我的codebehind中,我定义了一个
WebMethod
,还有一个
Message
类来保存我的消息

[WebMethod]
public static void SendMessage(string message)
{
    //Create a  TMessage and deserialize to it

}
消息

public class TMessage
{
    public string Number { get; set; }
    public string Message { get; set; }
}
我的理解是,我正在接收JSON,应该将其反序列化为
消息
类型。 但是,我在
SendMessage
方法中有一个断点,它从未被命中,返回的错误是:
Message=无效的web服务调用,参数“Message”缺少值。

从之前的一些游戏中,我能够通过将参数从
string
更改为
object
(以及对Ajax调用中的data:value的一些更改)来命中断点,但随后我似乎收到了一个
字典,无法将其转换为
TMessage


谢谢您的建议。

如果您清楚地了解webmethod,它只有一个参数,即
消息

您需要将此消息传递给ajax调用。-<代码>变量参数=“{'message':'”+message+“}”

有用链接-


尝试此操作后,断点被命中,但
消息
参数的值为:
“[object object]”
何处?它是否在
ajax
success
处理程序中?如果是,则只需使用
msg.d
。我的意思是,ajax调用是否与HTTP状态200配合良好?断点在
SendMessage(string message)
中的codebehind中命中。但是
消息
的值是
“[object object]”
。我希望它是类似于我在Ajax调用中传递的值的JSON字符串表示的东西…?does-
document.getElementById(“message”)。value
具有实际的字符串值?实际上我有
var params=“{'message':'”+message+“}”设置为
var params=“{'message':'”+msg+“}”
它现在可以工作,但只发送
消息
,而不发送号码。。无论如何,这是一个开始:)
public class TMessage
{
    public string Number { get; set; }
    public string Message { get; set; }
}
function SendMessage() {

var number = document.getElementById("phonenumber").value;
var message = document.getElementById("message").value;

var params = "{'message':'" + message + "', 'number':'" + number + "'}";
$.ajax({
    type: "POST",
    url: "Default.aspx/SendMessage",
    data: params,
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function (msg) {
        alert("Message sent");
    },
    error: function (msg) {
        alert("Message call failed");
    }
});
}