Je vais maintenant partager avec vous une brève discussion sur le problème de l'obtention de la valeur ModelAndView avec js. Elle a une bonne valeur de référence et j'espère qu'elle sera utile à tout le monde.
La valeur de retour de ModelAndView ne peut-elle pas être reçue dans JS ? Doit-il être reçu dans une page JSP
1 Méthode 1 [valide]
Oui, c'est la même chose que l'el méthode d'accès aux expressions.
Exemple de code, un userId est stocké dans l'Action d'une requête d'affichage de données :
@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; }
dans la page jsp file Utilisez cet ID utilisateur comme condition de requête dans js :
<script type="text/javascript"> var path = '<%=basePath%>'; var author=${userId}; $(document).ready(function(){ queryList(); }); function queryList(){ $.ajax({ type : 'POST', url : path+'queryDiaryList', //通过url传递name参数 data : { author:author, page:_currentPage, pageSize:_pageSize, type:$("#queryType").val() }, dataType : 'json', 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 Méthode 2
【Efficace ? 】
La station renvoie-t-elle js ou json ? Cela doit être clarifié !
Supposons que la chaîne renvoyée par l'arrière-plan soit stockée dans ResponseText, alors
Si c'est js, alors
var result = eval("(" + responseText + ")");
Si c'est json, juste
var result = JSON.parse(responseText);
3 Méthode 3 [Effective]
Ajouter des champs cachés,
<input id="autoflag" type="hidden" value="${autoflag}">
pour faciliter la lecture du js
var passflag=document.getElementById("autoflag");
Ce qui précède est ce que j'ai compilé pour tout le monde. J'espère que cela sera utile à tout le monde à l'avenir.
Articles connexes :
Résumé XMLHttpRequest du noyau Ajax
Résoudre le problème de la perte de cookies de données de requête inter-domaines Ajax
Utilisez ajax pour modifier le contenu de la page et l'URL de la barre d'adresse sans actualiser
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!