【总结】异步调用ajax构造URL字符串的几类方法
通常使用ajax异步调用都是这样的格式 $.ajax(){ url:url,data:data,success:function(re){ returnre;} }; 有人说过php,从简单上来说就是对字符串的处理。今天,我想说的是对data值的处理。 一、data属于一个对象,但类型有点类似于数组,有键值及数值之分,原始数据包括 {key:value}的形式,在后台接受到的值就变为array['key']=value。 二、 有时候数据复杂且过多时候,会有使用到input标签,通过表单可以传比较多的参数值,通过form提交即可传值。若没有form时候,这时候一定会有人与当初的我一样一筹莫展。所以,我们可以取巧,var data = jQuery('<form action=""></form>').append(jQuery('input').clone()).serialize();在不影响页面整体的情况下只需取到需要的值即可。记住:clone()只指向参数值,内存地址却不一样。 三、serialize()作用于一个JQuery对象,它能够将DOM元素内容序列化为字符串,用于ajax请求。通过使用serialize()方法,可以提交本页面的所有域。serializeArray()没有用过,但如果被传递的对象在数组中则可以使用此方法。 四、$.param()方法是serialize()方法的核心,用来对一个数组或对象按照key/value进行序列化。比较通俗易懂:varobj={a:1,b:2,c:3}; vark=$.param(obj); alert(k);//输出a=1&b=2&c=3 五、至于 举个栗子: $H({action:'ship',order_id:123,fees:['f1','f2'],'label':'ademo'}).toQueryString() $H().toQueryString() //->'action=ship&order_id=123&fees=f1&fees=f2&label=a%20demo' 六、http_build_query什么是序列化数组的URL的一种常用方法。PHP自动反序列化它 $fs=array(5,12,99);$url="http://$_SERVER[HTTP_HOST]/?". http_build_query(array('c'=>'asdf','fs'=>$fs)); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- winform程序更新
- 【Unity3D】使用MD5值,确保本地Sqlite数据库内容没有被篡改
- Cocos2dx 3.6源码编译错误:syntax error : missing ')
- manifest.xml文件占位符注意
- ICCV2013-Hybrid Deep Learning for Face Verification
- 十分钟掌握SQLite操作
- 当发送请求是Ajax请求时,如何从ManagedBean重定向?
- ios – PFUser / PFInstallaion saveEventually – 在调用中
- 如何在c#中从mysql读取和打印数据
- PyCharm使用技巧:Regex Tester(正则表达式测试工具)