漫談JQUERY和JSON沖突進(jìn)行學(xué)習(xí)研究
本文介紹JQUERY和JSON沖突的使用問題介紹說(shuō)明(使用Ruby on rails框架進(jìn)行講解,因?yàn)樗械呐渲梦募际鞘褂玫腨AML)以及它與XML和JSON的區(qū)別,***討論了YAML的優(yōu)勢(shì)和缺點(diǎn)。
引入之后,發(fā)現(xiàn)某些方法用不了,報(bào)錯(cuò),怪異,逐步的排查,折騰了一下午,終于發(fā)現(xiàn)公司的框架里引入了json.js,看了json.js的源碼,刪掉之后,功能正常,網(wǎng)上搜搜這些,發(fā)現(xiàn)遇到這種問題的人不在少數(shù),解決方法大致如下:#T#
1.有說(shuō)調(diào)整js加載先后順序的
2.還有直接使用Jquery的專用JSON.js
但是這兩種方案不適于我,因?yàn)槭枪究蚣芊庋b起來(lái)的東西,不能改動(dòng)。我用的是下面的方法變通的解決辦法就是仿照下面的解決方法做的:在js代碼里加上這么一句
delete(Object.prototype.toJSONString);,問題解決。我測(cè)試成功,暫時(shí)沒有發(fā)現(xiàn)問題。PS:沒見過(guò)這種在頁(yè)面直接就能調(diào)用delete(Object.prototype)的方法,有時(shí)間還是要好好研究一下js面向?qū)ο蟮臇|西。
- Martin Cooper
- // after json.js has loaded...
- > // define a namespace to minimize footprint
- > var JSON = {};
- >
- > // add all of the methods
- > JSON.arrayToJSONString = Array.prototype.toJSONString;
- > JSON.booleanToJSONString = Boolean.prototype.toJSONString;
- > JSON.dateToJSONString = Date.prototype.toJSONString;
- > JSON.numberToJSONString = Number.prototype.toJSONString;
- > JSON.objectToJSONString = Object.prototype.toJSONString;
- > JSON.stringToJSONString = String.prototype.toJSONString;
- > JSON.parseJSON = String.prototype.parseJSON;
- >
- > // remove all the methods from intrinsic objects
- > delete(Array.prototype.toJSONString);
- > delete(Boolean.prototype.toJSONString);
- > delete(Date.prototype.toJSONString);
- > delete(Number.prototype.toJSONString);
- > delete(Object.prototype.toJSONString);
- > delete(String.prototype.toJSONString);
- > delete(String.prototype.parseJSON);

















