日期:2014-05-20  浏览次数:20725 次

Javascript Ajax 如何读取List的值
问题是 :我在action中得到了一个list集合的值为 keylist

在jsp页面中我是用ajax请求action 然后我想在页面上显示这个集合的 数据 代码是这样的 :
<script type="text/javascript">
function key(){
  var key=document.getElementById("keyword");
var hoturl=basePath+"/hotkey/hk.shtml";
$.ajax({
type: "POST url: hoturl,
success: function(data){ // if($.trim(data)=='success'){
alert("222222");
var htmln="<span>热搜:</span><s:iterator value="keylist" id="k"><a href="#" onclick="searchBrand('${k.keyword}')" ><s:property value="#k.keyword" /></a> </s:iterator> ";
key.innerHTML=htmln;
  }
}
  });
}
key();
</script> 
 在这里面我想用<s:iterator> 进行遍历取值 可是页面只显示了 “热搜” 这两个字,就是取不到keylist的值 ,想问问各位大侠 是不是js里面不能用 struts标签 ?有木有别的取值的方法?应该如何写呢?速解!!!


------解决方案--------------------
在后台用JSONArray 转换

前台JS 把返回的当数组类型处理
------解决方案--------------------
探讨
问题是 :我在action中得到了一个list集合的值为 keylist

在jsp页面中我是用ajax请求action 然后我想在页面上显示这个集合的 数据 代码是这样的 :
<script type="text/javascript">
$.ajax({
type: "POST url: hoturl,
success: function(data){ // if($.trim(data)=='success'){
alert("222222");
var htmln="<span>热搜:</span><s:iterator value="keylist" id="k"><a href="#" onclick="searchBrand('${k.keyword}')" ><s:property value="#k.keyword" /></a> </s:iterator> ";
key.innerHTML=htmln;
}

------解决方案--------------------
一:通过JSON来完成
二:在后台处理list,将list存得内容取出来,存到一个StringBuffer里面用,隔开 将这个Stringbuffer转成String传递到前台 前台根据splite(“,”),一个一个取出你想要的结果
------解决方案--------------------
JScript code
<s:iterator value="keylist" id="k"></s:iterator>

------解决方案--------------------
json是正确的选择