0

次のように生成されたテーブルがあります。

<table>
    <tr>
    <th>Članovi postave:</th>
    <c:if test="${not empty user}">
        <c:if test="${user.admin eq true}">
        <td><a href="AddClanPostave">Dodaj novog člana postave</a></td>
    </c:if>
        </c:if>
</tr>
<c:forEach items="${noviFilm.clanoviPostave}" var="clanPostave">
    <tr>
        <td><c:out value="${clanPostave}"/><br><td>
    <c:if test="${not empty user}">
        <c:if test="${user.admin eq true}">
        <form action="RemoveServlet" method="post">
            <input type="hidden" name="type" value="movie"/>
            <input type="hidden" name="entity" value="${clanPostave.id}"/>
        <td><input type="submit" value="Remove"></td>
        </form>
        </c:if>
    </c:if>
    </tr> 
</c:forEach>
</table>

今、私はWebプログラミングにかなり慣れていません。私はサーブレット、.jsp、el、jstl のほとんどを理解しており、jQuery を学び始めています。このコードは問題のサーブレットを呼び出し、適切なリストから特定のエンティティを削除してページをリロードしますが、jQuery を使用してこれを行うためのより迅速で簡単な方法があるかどうか疑問に思っていましたか?

何かのようなもの:

$(".delete").live('click', function(event) {
    $(this).parents('tr').remove();
});

問題は、これが表示だけでなくリストでも正しく機能するかどうかわからないことです。

副次的な質問 - 選択したオブジェクトを取得するためのより効率的な方法はありますか。私が今行っているのは、彼の UUID id 属性を保存してから、リストを調べて toString 値を比較することです。より良い方法はありますか?

4

1 に答える 1

1

本当の質問は何ですか?壊れていますか?

を使用するliveのではなく、最新の jQuery バージョンを使用して、次のように記述します。

$(document).on("click", ".delete", function(event) {
    $(this).parents('tr').remove();
});

その間、HTML を改善してください :-)

<table>
  <thead>
    <tr>
    <th>Clanovi postave:</th>
    <c:if test="${not empty user}">
        <c:if test="${user.admin eq true}">
        <td><a href="AddClanPostave">Dodaj novog clana postave</a></td>
    </c:if>
        </c:if>
    </tr>
  <thead>
  <tbody>
    <c:forEach items="${noviFilm.clanoviPostave}" var="clanPostave">
      <tr>
          <td><c:out value="${clanPostave}"/><br><td>
      <c:if test="${not empty user}">
          <c:if test="${user.admin eq true}">
          <form action="RemoveServlet" method="post">
              <input type="hidden" name="type" value="movie"/>
              <input type="hidden" name="entity" value="${clanPostave.id}"/>
          <td><input type="submit" value="Remove"></td>
          </form>
          </c:if>
      </c:if>
      </tr> 
    </c:forEach>
  </tbody>
</table>
于 2013-06-23T21:24:17.527 に答える