初识jquery,被它的选择器、不唐突的HTML风格等所吸引。
今天记录开始使用遇到的一些问题:
1) 短时间内,多次点击按钮,但不能正确提交
这是由于浏览器的缓存影响。在页面顶端meta里设置也没有用。
当使用GET方式时要添加时间戳参数 (net Date()).getTime() 来保证每次发送的URL不同, 可以避免浏览器缓存.
上述的请求可以修改为:$("#test").load("ajax/Test?name=" + encodeURI("AC米兰") + "×tamp=" + (new Date()).getTime());
2)ajax中文乱码:
分三步解决:
第一步
jQuery.js中搜索’contentType’,然后在"application/x-www-form-urlencoded"后面加上 "; charset=UTF-8", 最终得到
contentType:"application/x-www-form-urlencoded; charset=UTF-8"
第二步
在页面上,设置参数的地方,使用encodeURI方法对参数进行编码。
注意:服务器需要配置URIEncoding="UTF-8" 当然此处的字符集应该和应用程序选择的字符集相同?
到此,已经可以在服务器上获得正确的编码
$("#test").load("ajax/Test?name=" + encodeURI("AC米兰")
服务器端代码,可以直接request.getParameters获取该参数。
第三步
客户端:
$("#test").load("ajax/Test?name=" + encodeURI("AC米兰") + "×tamp=" + (new Date()).getTime() ,
function(responseText, textStatus, XMLHttpRequest)
{
$("#test").html(decodeURI(responseText)); //或者: $(this).html(responseText);
}
);