日期:2014-05-16  浏览次数:20572 次

Jquery ajax问题
[code=Java][/code]页面JS


<link href="<%=basePath%>/js/showmessage/jquery.showMessage.css"
rel="stylesheet" type="text/css" />
<script type="text/javascript"></script>
<script type="text/javascript" language="JavaScript"
src="/js/showmessage/jquery.js"></script>
<script type="text/javascript" language="JavaScript"
src="/js/showmessage/jquery.showMessage.js"></script>
<script type="text/javascript" language="JavaScript">
$(document).ready(function(){
$.ajax({
type:"GET",
url:"<%=basePath%>/alert/getAllListAlertRecord.do",
success : function(msg) {
alert("返回信息"+msg);
$(function() {
$.messageBox({ //弹出窗体的js方法
//timeout : 5000,
ms : "您有新的消息,请及时查看"
})[code=Java][/code]
})
}
})
})



Action方法



public String getAllList() {

Long userId = ContextUtil.getCurrentUserId();
String msg = alertRecordService.getAll(userId, 1);
return msg;
}



我现在问题是 Action里边的值 怎么传回页面 我想传给另外的一个JS方法

------解决方案--------------------
return的msg是什么格式,
只是文本的话 直接out.println();不带其他html标记即可
如果是js格式的,有要特殊字符转义一下

HTML code

<script type="text/javascript" language="JavaScript">
$(document).ready(function(){
  $.ajax({
    type:"GET",
    url:"<%=basePath%>/alert/getAllListAlertRecord.do",
    success : function(msg) {
      alert("返回信息"+msg);
      $.messageBox({
         ms : "您有新的消息,请及时查看"
      });
    }
  })
})
</script>

------解决方案--------------------
不管用什么框架
/alert/getAllListAlertRecord.do 就是按照一般的页面输出方式输出,只是不要包含html代码就可以了
用浏览器单独访问这个地址,看到的就是那个字符串,这步成功了再往下走。