javascript: Mootools 1.2 使用 Request.JSON 传递Get参数的Bug

Mootools 1.2对json的操作更加简便了,不过仍存在一些小的bug。今天我在完善Mocola.Net框架的时候发现了这个Bug,例如:

// This code will send a data object via a GET request and alert the retrieved data.
var jsonRequest = new Request.JSON({url: "http://site.com/tellMeAge.php", onComplete: function(person){
    alert(person.age);    //Alerts "25 years".
    alert(person.height); //Alerts "170 cm".
    alert(person.weight); //Alerts "120 kg".
}}).get({'firstName': 'John', 'lastName': 'Doe'});

这个是官方的一个例子,意思是对tellMeAge.php页面做get提交获取json的返回数据,一般情况下我们get传递的参数只有一个,比如ID。假如我们对Request.JSON提交一个get参数,比如:

var jsonRequest = new Request.JSON({url: "back/GetFamily.aspx", onComplete: function(person){
        setData(person.DF_Families);
}}).get({'id': 18});

我们提交一个get参数id,数值为18,此时,onComplete获取的person对象就为null。我想这应该是mootools 1.2的一个bug,目前我们只能传递两个get参数的方法来避免这个bug,例如:

var jsonRequest = new Request.JSON({url: "back/GetFamily.aspx", onComplete: function(person){
        setData(person.DF_Families);
}}).get({'id': 18, 'status': 'update'});

OK, it works! 此时获取的person就是一个[Object]对象。我猜想POST方式也可能存在这个问题,大家可以尝试一下。

纯属个人看法,或者单个参数的传递应该这样:get('id': 18)。:-) OK. try next time.

 

引用通告地址: 点击获取引用地址
标签: 脚本
评论: 0 | 引用: 0 | 阅读: 3062 | 打印 | 打包 | 转发
发表评论
昵 称: 密 码:
网 址: 邮 箱:
验证码: 验证码图片 选 项:
头 像:
内 容:
  • 粗体
  • 斜体
  • 下划线
  • 插入图像
  • 超链接
  • 电子邮件
  • 插入引用