Rumah  >  Artikel  >  hujung hadapan web  >  浅谈js获取ModelAndView值的问题

浅谈js获取ModelAndView值的问题

亚连
亚连asal
2018-05-28 16:13:171747semak imbas

下面我就为大家分享一篇浅谈js获取ModelAndView值的问题,具有很好的参考价值,希望对大家有所帮助。

JS当中不能接收ModelAndView的返回值吗?一定要在JSP页面中才能接收吗?

1 方法一 【有效】

可以的,跟el表达式访问方式一样。

示例代码,一个数据展示请求的Action中存入一个userId:

 @RequestMapping(value="/diary")
  public ModelAndView toDiaryList(HttpSession session){
    ModelAndView view = new ModelAndView("/diary_list");
    TbUser user = (TbUser)session.getAttribute(SystemConstant.CURRENT_USER);
    //set info of current user
    if(user!=null){
      Integer id = user.getId();
      view.addObject("userId",id);
    }
    return view;
  }

在页面jsp文件中js中使用这个userId作为查询条件:

<script type="text/javascript">
    var path = &#39;<%=basePath%>&#39;;
    var author=${userId};
    $(document).ready(function(){
      queryList();
    });
    function queryList(){
      $.ajax({
        type : &#39;POST&#39;,
        url : path+&#39;queryDiaryList&#39;, //通过url传递name参数
        data : {
            author:author,
            page:_currentPage,
            pageSize:_pageSize,
            type:$("#queryType").val()
          },
        dataType : &#39;json&#39;,
        success:function(data){
          if(data.status){
            showTable(data.result);
            //调用分页插件,初始化分页p
            pageShow("queryList",data.ext.total);
          }else{
            alert(data.description);
          }
        },
        error:function(e){
          alert("Net error ,try later.");
        }
      });
    }
    </script>

2 方法二

【有效?】

台返回的是js,还是json?这个一定要搞清楚!

假设后台返回的字符串存储在responseText里,那么

如果是js,就

var result = eval("(" + responseText + ")");

如果是json,就

var result = JSON.parse(responseText);

3 方法三 【有效】

加入隐藏字段,

<input id="autoflag" type="hidden" value="${autoflag}">

便于js读取 

var passflag=document.getElementById("autoflag");

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

Ajax核心XMLHttpRequest总结

解决ajax跨域请求数据cookie丢失问题

使用ajax实现无刷新改变页面内容和地址栏URL

Atas ialah kandungan terperinci 浅谈js获取ModelAndView值的问题. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn