哲思

用哲学的头脑去思考问题!
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

一个关于jquery用get方式提交,获取参数的奇怪的现象

Posted on 2011-08-06 15:30  哲 思  阅读(2477)  评论(3编辑  收藏  举报

今天碰到一个关于用jquery的get提交数据,然后获取参数的的问题!

ajax提交以后产生的url是这样

http://localhost:10022/Product/jifen/PreShopCart.aspx?proNum=1&styleId=null&id=67377&shfs=26

然后我用

  if(request["styleId"]==null || request["styleId"]=="")

{

   response.write("缺乏规格");

   response.end();

}

判断没有提交规格编号

可当执行程序之后发现,此判断没有起作用。

然后我就改成

if(request.QueryString["styleId"]==null || request.QueryString["styleId"]=="")

{

   response.write("缺乏规格");

   response.end();

}

还是不行。

最后无奈,我就直接输出

response.write(request["styleId"])  居然输出了个null

然后我判断改成

if(request["styleId"]==“null” || request["styleId"]=="")

{

   response.write("缺乏规格");

   response.end();

}

居然可以了,判断起到作用了。

看到这个结果,我估计也有很多人感觉似曾相识,看到url里的参数值为null,然后就很随意的用null来判断是否参数为空,这其实是我们的习惯造成的错误。

通常我们认为null就应该用==null来判断是否为空,但其实这是错误的。当url中某个参数的值为null的时候,我们应该用=="null"来判断。

这只是个人碰到的一点小问题。错误的地方还请各位大虾指出。