Ajax常见问题
来源:互联网 发布:天猫和淘宝质量一样吗 编辑:程序博客网 时间:2024/05/21 19:46
Ajax 向前台动态写入数据出错,建议使用x.html()追加,x.append()不建议使用。貌似append()追加时会自动补充标签完整:如x.append(“<tr><td>”);
在页面显示时会变成<tr><td></td></tr>,自动追加了</td></tr>。所以不建议使用,如果想使用,就这样用x.append(“<tr><td>xxxxx</td></tr>”)。
Ajax里面的页面加载数据:里面追加的字符串可以使用html转js字符串的工具。
http://www.css88.com/tool/html2js/
(js多余的字符不要选取,如[], .join();)
如:<td>sssss</td>经过转换成"<td>sssss</td>",转换后可以直接插入字符串: s+="<td>sssss</td>";这样可以提高效率,和减少因拼写出错造成错误的情况。
想要对Ajax动态插入的标签进行操作。如果直接在Ajax方法后获取,会造成失败。例子:
$.ajax( {
type : 'POST',
dataType : 'json', // json对象
url : 'dingdan!tongji.action',
data : null,
success :function(response, status,xhr) {
$.each(response,function(index, value) {
S+=”<div id=’test’>sss<div>”;
})
$(‘#test’).html();
},
error : function() {
alert("加载失败");
}
})
$(‘#test’).html();
红色的位置的语句无法获取到ajax动态加载的id为test的<div>,
而绿色的位置可以。
大概原因可能是Ajax异步时的运作机制是激活Ajax方法时,会暂时先执行ajax方法后的其他方法红色部分,再返回执行ajax蓝色区域,所以如果在ajax方法后红色区域写获取ajax动态插入的标签会无效。
所以如果想要对ajax处理的数据进行操作,可以写在ajax方法的作用域(蓝色区域)里。
还有一种方法是加个参数:async:
Ajax中不执行success的原因:
当Datatype:json,1.4版本以后对返回的json格式很严格,所以注意返回的json格式符不符合,可以在浏览器控制台alert下返回json内容查看。
所以如果是这种错,就先针对数据传递是否错误:指定格式是否与数据格式相对应。
(Tips:在传递data的时候有两种方法:
1. kv传值:
data : {
'entity.id':id //kv传值
},
2. 表单序列化:data:$("#searchform").serialize(),
具体使用看情况。)
页面报出uncaught exception: out of memory异常
当你的按钮是提交(sumbit)按钮,但是你又用到Ajax提交的话,火狐就会报出uncaughtexception: out of memory错误,并且点击按钮会一直刷新。直接把按钮改为button
两种页面加载数据的方法:
1、 前一个页面action传递后,当前页面使用struct接受显示。
设置<form action=” method=”post”>button使用submit。
2、 利用ajax访问action,返回的json用于加载数据
Button使用button
- Ajax常见问题
- ajax常见问题总结
- Ajax常见问题解决方案
- Ajax常见问题汇总
- ajax常见问题答疑
- Ajax常见问题整理
- ajax一些常见问题
- 前端-ajax请求常见问题
- ajax常见问题总结一
- AJAX应用解决一些常见问题
- AJAX应用解决一些常见问题
- AJAX应用解决一些常见问题
- AJAX应用解决一些常见问题
- AJAX应用解决一些常见问题
- AJAX应用解决一些常见问题
- Ajax程序开发中常见问题
- Ajax程序开发中常见问题
- Java 开发员AJAX 常见问题
- js 未结束的字符串常量错误解决方法
- java 调用.net webservice 带soap验证头消息方式
- find,find_if,find_end函数
- Thymeleaf基本知识
- 一种Dump文件解析
- Ajax常见问题
- 惨痛教训其二
- OCP 题库 笔记
- [深入学习C#]利用反射给对象赋值
- Objective-C可变参数方法的定义和使用
- Java的HashMap和HashTable
- quick-3.5 无法正常显示有混合纹理的csb文件
- Python File writelines() Method 按行写文件
- C#命名规范