0

我们通常在 jsp 上执行类似 JSTL 的操作……但我现在需要使用 JSON 在 javascript 中设置数据。我将如何在 Javascript/JSON 中做这样的事情

基本上循环一个bean并拉出它的参数:

  <c:forEach var="field" items="${detFields}">
      ${field.groupName}
          ${field.breakoutAllowed}           
 </c:forEach>

所以我可以把它放在这样的东西里面:

    "data": [{
        "value": "${field.groupName}"

    }, {

        "value": "${field.breakoutAllowed}"  
    }]
4

2 回答 2

1

希望此代码运行良好并受到您的喜爱。我认为将 scriptlet 写入 JS 是一种奇怪的做法,所以只是提出了另一种接近它的方法。如有需要请发表评论。

$(document).ready(function(){
    var k=$('#data').val();

    //Convert the value into the required array. Since writing it is JavaScript directly is not a daily practice.
    })

    <input type="hidden" id="data" value=
     <c:forEach var="field" items="${detFields}" varStatus="status">
       { 
         "name":"${field.groupName}",
         "breakoutAllowed":"${field.breakoutAllowed}" 
       }
       <c:if test="${not status.last}">,</c:if>
     </c:forEach>

     />
于 2012-07-05T20:04:22.180 回答
1

看起来您正在寻找的 JSON 结构是一个对象数组,每个对象都有两个属性:namebreakoutAllowed. 将此数据分配给变量的 JavaScript 可以像这样从 JSP 文件中输出。(当然,在一个<script>块或等效的范围内。)

var output = [
 <c:forEach var="field" items="${detFields}" varStatus="status">
   { 
     "name":"${field.groupName}",
     "breakoutAllowed":"${field.breakoutAllowed}" 
   }
   <c:if test="${not status.last}">,</c:if>
 </c:forEach>
]
于 2012-07-05T19:35:06.187 回答