要点:

1、js将字符串转化为object方法,通过新建函数。

2、通过ajax返回的数据是object类型。

3、jquery.attr()里的attr是object类型

例子:主要实现后台返回的attr里的两个参数,将两个参数直接应用赋值

ajax前端请求:

<html>
<head>
<title>jquery 同时修改两个属性</title>
</head> </html> <script src="extlib/jquery-1.11.1.min.js" type="text/javascript" charset="utf-8"></script>
<script src="extlib/JSON-js-master/json_parse.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
/*** json 格式字符串转化为 javascript object ***/ function parseObj( strData ){ return (new Function( "return " + strData ))(); } $.ajax({
url: 'retJson.php',
type: 'POST',
dataType: 'json',
data: {param1: 'value1'},
success:function(data)
{ /**
* [imgAttr ajax接收到的data是object对象]
* @type {[object]}
*/
imgAttrStr = data['img']; /**
* 将object 转化为json字符串
* [str 将object解析json字符串]
* @type {[string]}
*/
var str = JSON.stringify(data);
alert(str); /**
* 将json字符串转化object
* [object parseJSON与eval("("+str+")")]等价
* @type {[object]}
* object
*/
var jsonObject = $.parseJSON(str);
var jsonObject = eval("("+str+")"); /**
* [imgAttr 将“字符串”转化对象,修改attr属性]
* $("#").attr(object)
* @type {[object]}
*/
imgAttrObject = parseObj(imgAttrStr);
// alert(typeof(imgAttr)); $("#img_switch").attr(imgAttrObject); }
}); </script> <body> <div>
<img id="img_switch" src="data:images/ups_ac_fail.gif" height="216" width="450" alt="UPS断线">
</div> </body>

php后台数据返回

<?php 

echo "{\"img\":\"{'src':'images/ups_online.gif','alt':'UPS在线'}\" }";
// echo '{"img":"images/ups_online.gif"}'; ?>

动态修改attr里的多个属性的更多相关文章

  1. JavaScript动态修改html组件form的action属性

    用javaScript动态修改html组件form的action属性,可以在提交时再决定处理表单的页面. <%--JavaScript部分--%><script language=& ...

  2. 周记5——随机撒花特效、动态修改伪元素样式、contenteditable属性、手机端调试利器VConsole、浏览器端debug调试

    记录一些小零碎知识点,以便日后查看~ 1.随机撒花特效 教师节快到了,公司的产品提出一个需求:在IM(即时聊天)聊天界面弹出教师节的祝福“广告”,用户点击“发送祝福”按钮,聊天界面会随机撒花.这里的重 ...

  3. 自己动手丰衣足食之轮播图一动态修改marginTop属性实现轮播图

    引言 学习jQuery有年头了,刚开始学习时自己动手写过轮播图,放的久了以至于忘了大致思路了.现在转而做前端,抽空把jquery轮播图拿出来写一写,把各种思路都自己练习练习,这里主要使用动态修改mar ...

  4. JDK动态代理+反射实现动态修改注解属性值

    这是最近朋友的一个需求,正好闲来无聊有些时间,跟着研究一下,如有不正确的地方,欢迎大家指正~ 一.准备自定义注解 注:如何实现自定义注解,请移步百度. 二.实现 1.实现方式1:通过反射+动态代理动态 ...

  5. Day14_85_通过反射机制修改Class的属性值(IO+Properties)动态修改

    通过反射机制修改Class的属性值(IO+Properties)动态修改 import java.io.FileInputStream; import java.io.FileNotFoundExce ...

  6. [SAP ABAP开发技术总结]动态修改选择屏幕

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  7. 动态修改 NodeJS 程序中的变量值

    如果一个 NodeJS 进程正在运行,有办法修改程序中的变量值么?答案是:通过 V8 的 Debugger 接口可以!本文将详细介绍实现步骤. 启动一个 HTTP Server 用简单的 Hello ...

  8. 动态修改 C 语言函数的实现

    Objective-C 作为基于 Runtime 的语言,它有非常强大的动态特性,可以在运行期间自省.进行方法调剂.为类增加属性.修改消息转发链路,在代码运行期间通过 Runtime 几乎可以修改 O ...

  9. 关于360插件化Replugin Activity动态修改父类的字节码操作

    近期在接入360插件化方案Replugin时,发现出现崩溃情况. 大概崩溃内容如下: aused by: java.lang.ClassNotFoundException: Didn't find c ...

随机推荐

  1. wireshark过滤语法总结-重点偏移过滤

    http://chenjiji.com/post/3371.html 作者: CHAN | 发布: 2013 年 10 月 24 日 做应用识别这一块经常要对应用产生的数据流量进行分析. 抓包采用wi ...

  2. 给linux添加yum源。

    在玩linux的过程中,经常会下载一些源码包.软件大多是国外人写的,由于众所周知的原因,网络下载很慢. 所以想到了更新yum源的方法. 我的linux版本是CentOS6.3的. 以下参考百度. 1, ...

  3. ubuntu --- shortcut key

    Linux系统下图形界面与Linux命令行模式的切换的方法 由图形转换到控制台模式:ctrl+alt+f1~f6(同时按下3秒钟不要马上松开)....由控制台转向图形模式是:alt+f7 快捷键(ub ...

  4. uC/OS-II队列(OS_q)块

    /*************************************************************************************************** ...

  5. cocos2d 3.6 win7下的配置

    我搭建cocos2.6的开发环境需要安装工具包括: 1.Visual Studio 2012(由于不兼容win7,需要安装Update 4)和虚拟光驱daemon tool,虚拟光驱的下载地址:htt ...

  6. 兼容ie6及一下版本的自适应

    <meta http-equiv="X-UA-Compatible" content="IE=edge,Chrome=1" /> <meta ...

  7. 自然语言15.1_Part of Speech Tagging 词性标注

    QQ:231469242 欢迎喜欢nltk朋友交流 https://en.wikipedia.org/wiki/Part-of-speech_tagging In corpus linguistics ...

  8. Maven打包可执行jar

    参考文献:http://blog.csdn.net/xiao__gui/article/details/47341385 方法:使用assembly插件,生成的jar包名为xxx-jar-with-d ...

  9. Comet、SSE、技术

    1.概念: 利用长时间保留的HTTP请求(‘挂起的GET’)来让服务器向浏览器推送数据的技术,经常被称为Comet. SSE让服务器可以向客户端流式发送文本消息,比如服务器上生成的实时通知或更新.

  10. Python + OpenCV2 系列:1 - 配置

    Python+OpenCV2+Eclipse+Windos 8.1(32bits): 最初的目的是做图像处理,opencv强大的社区支持,让我想从matlab转到opencv框架下进行试验,而Pyth ...