Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.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
Javascript空值错误地发送到方法_Javascript_Asp.net Mvc 3_Null - Fatal编程技术网

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) {

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)
  {
    //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