zoukankan      html  css  js  c++  java
  • js中构造字符串若放入Grails中gsp的<g:link>标签出错

    Grails的ajax使用json格式返回,在js中构造字符串时若放入<g:link>标签,字符串构造就会错误

    如下就会发生错误,导致回调函数无法执行

     1 function show(obj){
     2         var id=obj.value;
     3 
     4         $.post("rtstudent",{id:id},
     5                 function(data){
     6                     var datas=eval(data);
     7                     var str="";
     8 
     9                     $.each(datas,function(i,st){
    10 
    11                         str+='<tr align="center">';
    12                         str+='<td>'+st.id+'</td>';
    13                         str+='<td align="left">'+ st.name+'</td>';
    14                         str+='<td>'+ st.results+'</td>';
    15                         str+='<td><g:link controller="student" action="show" id="'+st.id+'">查看</g:link></td>';
    16 
    17                         str+='<td><g:link controller="student" action="delete" id="'+st.id+'" >删除</g:link></td>';
    18 
    19                         str+='</tr>';
    20 
    21 
    22 
    23                     })
    24 
    25                    $("#studentmain").html('');
    26                     $("#studentmain").html(str);
    27 
    28                 } ,"json"
    29 
    30         );
    31 
    32 
    33     }

    字符串构造失败,引号的使用没有起到效果,可以将<g:link>标签再次拆开构造,让字符串构造成功,回调函数可以执行,但是<g:link>已经失效,失去了效果
    str+='<td><'+'g:link controller="student" action="show" id="'+st.id+'">查看</‘+’g:link></td>';
    
     str+='<td><g:link controller="student" action="delete" id="'+st.id+'" >删除</‘+’g:link></td>';
    

     所以不推荐在js中使用<g:link>标签,可以使用a标签等 




  • 相关阅读:
    Java 如何在线打开编辑word文档?
    java运行Linux命令
    docker安装mysql挂载宿主本地目录资源后无法启动的问题
    BigDecimal 实际测试结果
    docker中Ubuntu安装jdk1.8
    smarty模板自定义变量调节器
    smarty模板基础
    phpcms基本语句的用法
    php后台管理(列表页替换)
    phpcms后台管理(首页内容替换)
  • 原文地址:https://www.cnblogs.com/xiaoyangyi/p/6236412.html
Copyright © 2011-2022 走看看