Maison > interface Web > js tutoriel > Une brève discussion sur le problème de l'obtention de la valeur ModelAndView dans js

Une brève discussion sur le problème de l'obtention de la valeur ModelAndView dans js

亚连
Libérer: 2018-05-28 16:13:17
original
1779 Les gens l'ont consulté

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;
  }
Copier après la connexion

dans la page jsp file Utilisez cet ID utilisateur comme condition de requête dans js :

<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>
Copier après la connexion

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 + ")");
Copier après la connexion

Si c'est json, juste

var result = JSON.parse(responseText);
Copier après la connexion

3 Méthode 3 [Effective]

Ajouter des champs cachés,

<input id="autoflag" type="hidden" value="${autoflag}">
Copier après la connexion

pour faciliter la lecture du js

var passflag=document.getElementById("autoflag");
Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal