0

データに Datatables を使用していますが、データベースに保存されているデータをユーザーが変更できるようにしたいと考えています。だから私はjeditableを使うことができると読みましたが、エンターキーを押したときにサーバーにデータを送信する方法がわかりません。私はこの質問を読みました:リンクですが、実装方法がわかりません。誰でも私を助けることができますか?2 番目のテーブルの例でこれを行う必要があります。

<form action="/repairServlet" method="post">
<input type="hidden" name="action" value="aggiorna">
<input type="hidden" name="keycar" value="<%=KeyFactory.keyToString(keycar)%>">
<input type="hidden" name="plate" value="<%=repair.getProperty("plate")%>">
<input type="hidden" name="km" value="<%=repair.getProperty("km")%>">
 <input type="hidden" name="keyRepair" value="<%=KeyFactory.keyToString(repairKey)%>">
    <table width="200" cellspacing="0" cellpadding="0">
        <tbody>
            <tr>
                <td>Data Riparazione</td>
                <td><input type="date" name="date" value="<%=(String)repair.getProperty("date") %>" /></td>
                <td>Stato</td>
                <td><select  name="selectStato" size="3" multiple="multiple"
                    tabindex="1">
                        <option value="1">In corso</option>
                        <option value="2">Sospesa</option>
                        <option value="3">Conclusa</option>
                </select>
                <td>KM</td>
                <td><input type="text" name="km" value="<%=(String)repair.getProperty("km") %>" /></td>
                <td>Targa</td>
                <td><h4>
                        <label> &nbsp <%=(String)repair.getProperty("plate") %></label>
                    </h4></td>
            </tr>

        </tbody>
    </table>



    <table cellpadding="0" cellspacing="0" border="0" class="display"
        id="example">
        <thead>
            <tr>
                <th>Indice</th>
                <th>Tipo</th>
                <th>Descrizione</th>
                <th>Quantità</th>
                <th>Prezzo</th>
                <th>Totale</th>
                <th>Azioni</th>
            </tr>
        </thead>
        <tbody>
         <%for(Entity lr : listaRepairs){ %>    

            <tr>
                <td>ddd</td>
                <td><% out.print(lr.getProperty("type"));%></td>
                <td><% out.print(lr.getProperty("description"));%></td>
                <td><% out.print(lr.getProperty("qta"));%></td>
                <td><% out.print(lr.getProperty("price"));%></td>
                <td><% out.print(lr.getProperty("tot"));%></td> 
                <td><input type="submit" name="Aggiorna" /></td>                
            </tr>       


            <%-- <tr>
                <td>ddd</td>

                <td><input type="text" name="type" value="<%=lr.getProperty("type") %>" />
                     <input type="hidden" name="keyLineRepair" value="<%=KeyFactory.keyToString(lr.getKey())%>">
                </td>
                <td><input type="text" name="description" value="<%=lr.getProperty("description") %>"/></td>
                <td><input type="text" name="qta" value="<%=lr.getProperty("qta") %>"/></td>
                <td><input type="text" name="price" value="<%=lr.getProperty("price") %>" /></td>
                <td><%=lr.getProperty("tot") %></td>
                <td><input type="submit" name="Aggiorna" /></td>
            </tr> --%>
            <%} %>
        </tbody>
    </table>
4

1 に答える 1

1

ドキュメントを見る:

 $(document).ready(function() {
     $('.edit').editable('http://www.example.com/save.php');
 });

上記のコードはいくつかのことを行います: class edit を持つ要素は編集可能になります。マウスを 1 回クリックするだけで編集を開始できます。フォーム入力要素はテキストです。入力要素の幅と高さは元の要素と一致します。ユーザーがフォームの外側をクリックすると、変更は破棄されます。ユーザーが ESC を押しても同じことが起こります。ユーザーが ENTER を押すと、ブラウザはテキストを www.example.com の save.php に送信します。

したがって、コードでテーブルに id を指定してから、次のようにします。

$(document).ready(function() {
         $('#mytable').editable('http://<your domain/repairServlet');
     });
于 2013-07-05T11:15:15.903 に答える