Javascript空值错误地发送到方法
Javascript代码:Javascript空值错误地发送到方法,javascript,asp.net-mvc-3,null,Javascript,Asp.net Mvc 3,Null,Javascript代码: var x = null; var action_data = {x:x}; $.get( '~/MyController/MyAction', action_data, function(result){ //do_something } ); 控制器操作: public class MyController: Controller{ ... public ActionResult MyAction(string x) {
var x = null;
var action_data = {x:x};
$.get(
'~/MyController/MyAction',
action_data,
function(result){
//do_something
}
);
控制器操作:
public class MyController: Controller{
...
public ActionResult MyAction(string x)
{
//here, x is the string 'null';
}
}
有人能解释为什么字符串“null”被发送到动作而不是值null吗?感谢您,因为您传递了数据null,该数据已转换为字符串并设置为您的操作:
var x = null;
x="any thing"; // you need to change x value to be sent here
var action_data = {x:x};
$.get(
'~/MyController/MyAction',
action_data,
function(result){
//do_something
}
);
如果要传递null:
var x;
var action_data = {x:x};
$.get(
'~/MyController/MyAction',
action_data,
function(result){
//do_something
}
);
多亏了艾哈迈德,我想出了解决办法:
var x; //without the null initialization
这是一个诀窍;) 因为u设置var x=null;它是作为stringI传递的,我实际上希望在某些情况下该值为null。所以在我的方法中,我希望
(x==null)
为true