如何将EL与on ... html命令一起使用

时间:2019-03-24 16:56:21

标签: javascript jstl el

我尝试使用EL来填写Javascript函数req,但是没有用。 我正在使用JSTL,EL,JS。

尝试:

myFunction(${dto.name}); 
myFunction(<c:out value="${dto.name}"/>);

//完整代码:

<script>
  function deleteRow(index) { 
    var table = document.getElementById(tableId);
    table.deleteRow(index); 

    var rows = table.getElementsByTagName("tr");
    for (var i = 1; i <= rows.length; i++) {
      rows[i].cells[0].innerHTML = i;
      rows[i].cells[5].innerHTML = "<button onclick='deleteRow("+(i)+")'>Remove</button>";
    }
  }

  function insertRow(tableId, name, desc, addr, country) {
    var table = document.getElementById(tableId);
    var row = table.insertRow(-1); //-1 add bottom, 0 add top
    var cell1 = row.insertCell(0);
    var cell2 = row.insertCell(1);
    var cell3 = row.insertCell(2);
    var cell4 = row.insertCell(3);
    var cell5 = row.insertCell(4);
    var cell6 = row.insertCell(5);
    cell1.innerHTML = row.rowIndex;
    cell2.innerHTML = name;
    cell3.innerHTML = desc;
    cell4.innerHTML = addr;
    cell5.innerHTML = country;
    cell6.innerHTML = "<button onclick='deleteRow("+row.rowIndex+")'>Remove</button>";

  }
</script>

<c:if test="${sessionScope.LODATA != null}">
  <c:if test="${not empty sessionScope.LODATA}" var="checkList">
    <table id="viewTable" border="1">
      <thead>
        <tr>
          <th>NO</th>
          <th>Name</th>
          <th>Description</th>
          <th>Address</th>
          <th>Country</th>
          <th></th>
        </tr>
      </thead>
      <tbody>
        <c:forEach items="${sessionScope.LODATA}" var="dto" varStatus="counter">
        <tr>
          <td>${counter.count}</td>
          <td>${dto.name}</td>
          <td>${dto.desc}</td>
          <td>${dto.addr}</td>
          <td>${dto.country}</td>
          <td>
            <button onclick="insertRow('tripPlanTable', ${dto.name}, ${dto.desc}, ${dto.addr}, ${dto.country})">Add to trip</button>
          </td>
        </tr>
        </c:forEach>
      </tbody>
    </table>
  </c:if>
  <c:if test="${!checkList}">
    No record found
  </c:if>
  </c:if>

  <table id="tripPlanTable" border="1">
    <thead>
       <tr>
         <th></th>
         <th></th>
         <th></th>
         <th></th>
         <th></th>
         <th></th>
       </tr>
     </thead>
     <tbody>
     </tbody>
   </table>

从sessionScope加载表“ viewTable”。最后一个单元格显示一个按钮,用于添加到另一个表“ tripPlanTable”(它的作用类似于购物车)。 “ tripPlanTable”具有另一个按钮,用于删除选定的行并刷新数据。问题是当我使用insertRow()函数将数据加载到“ tripPlanTable”中时,我似乎找不到通过JSTL或EL插入数据的方法。该按钮一点也不起作用。使用普通字符串onclick =“ insertRow('tripPlanTable','a','b','c','d')”时,函数可以正常工作。

0 个答案:

没有答案