2

Spring MVC 4.0.6、Dandelion Datatables 1.1.0 と Dandelion Datatables Jsp 1.1.0 を使用するプロジェクトでは、2 つの jsps があります。

JSP1 (簡略化)

<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="datatables" uri="http://github.com/dandelion/datatables" %>

<form:form id="contractForm" class="form-horizontal" action="create"
     method="POST" modelAttribute="contractForm" novalidate="novalidate">

  <label for="legalIdentifier">
    <span>*</span> <fmt:message key="customers.cu.form.legal.id" />:
  </label>
  <form:input type="text" id="legalIdentifier" path="legalIdentifier" required="true"/>
  <span class="btn btn-success" id="nifSearch">
    <i id="searchIcon" class="fa fa-search"></i>
  </span>

  <div id="block_addresses_table">
      <!--At first the table will be empty-->
      <jsp:include page="jsp2.jsp" />
  </div>

</form>

<script type="text/javascript">

    $(document).ready(function(){}

        $('#nifSearch').click(function(){
            $(this).button('loading');

            // find customer returns jsp2.jsp with data
            $('#block_addresses_table').load('findCustomer','nif=' + $('#legalIdentifier').val(),
                function(response, status) {
                    $('#nifSearch').button('reset');                    
                }
            );          
        });

</script>

JSP2 (簡易)

<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="datatables" uri="http://github.com/dandelion/datatables" %>

<datatables:table id="addressesList" data="${contractForm.customer.addresses}" row="address" pagingType="bootstrap_simple" dom="tp" sortable="false">
    <datatables:column titleKey="customers.cu.form.address" property="completeAddress" />
</datatables:table>

問題

実際の問題は、最初JSP1のロード時に、テーブルの構成が正しく行われていることです。ただし、ボタンをクリックしてjquery.load()実行すると、テーブルの構成は、指定したものではなくデフォルトのものになります。

これは、JQuery を使用してテーブルをロードするときに、アプリケーションのいくつかの部分で実際に発生しています。

4

0 に答える 0