一个简单的问题,找了好一会,在次留个教训
一开始我用$("#textareaContents").text();怎么都得不到这个文本内容,后来才想起来textarea 属于FORM表单, 虽然 <textarea name="desc" cols="25" rows="5" id="desc"></textarea>他的写法是闭合式(就是类似<div></div>)的标签,不过在获取文本域值的时候同样要和其他FORM表单一样用 .val()获取
用$('#textareaContents').val();果然能获取到textarea的值。
var textareaContents = $('#textareaContents').val();
另外用AJAX提交到后台时,$.ajax({
url:"UserAssess",
type:"post",
data:{textareaContents:textareaContents},//第一个textareaContents值文本框的Id,用jquery方式的AJAX提交,这个Id必须要
dataType:"json",
success:function(data){}
按照上面的ajax提交,要是在后台获取这个textarea的值,即使文本时中文也不必要转型
不需要这样转码,String textareaContents= new String(request.getParameter("textareaContents").getBytes("iso8859-1"),"utf-8");
直接用String textareaContents = request.getParameter("textareaContents");就行了
TIP:返回json数据别忘了在后台指定返回类型response.setContentType("application/json;charset=utf-8");
但是如果用普通的表单提交中文或普通的href来传递中文,就需要按上面的转码了