プレースメントの作成、削除、編集が可能なプレース管理システムを作成しました。 これは、すべての行にplacename編集ボタンと削除ボタンがあるテーブルです。 テーブルの最後に「新しい場所を作成」ボタンがあります。ここで「新しい場所を作成」ボタンをクリックすると、新しい名前を書き込んで操作をキャンセルして操作を保存できる新しい生成された行が表示されます。jqueryテーブルの入力フィールドの値を読み取る
生成されたコンテンツを削除し、名前を付けて新しい行を作成し、セルを編集して削除する操作を保存することがわかります。私の問題は、それは1つの行でのみ動作しますが、私は操作で2つの名前を持っている場合は、jquery doesntは、それを保存するために私がクリックした行を知っていません。
例:
生成された行1 =スペイン
生成された行2 =ブラジルROW2で
[OK]をクリックしては、jQueryのによって除去ROW2、ROW1の名前が間違っ= placetableで生成されました!ここで
すべてのコード
<head>
<script src="../jquery.js" type="text/javascript"></script>
$(document).ready(function() {
$(".edit").click(function() {
var id = $(this).attr("id");
alert("edit "+id);
});
$(".delete").click(function() {
var id = $(this).attr("id");
alert("delete "+id);
});
$("#newbutton").click(function() {
$("tr:last").after("<tr><td><input style='width: 80%' /></td><td class=ok>OK</td><td class=cancel>Cancel</td></tr>").ready(function() {
$(".cancel").live("click", function() {
$(this).parent().remove();
});
$(".ok").click(function() {
var name = $(this).val();
$(this).parent().remove();
$("tr .edit:last").after("<tr><td>"+name+"</td><td class=edit>edit</td><td class=delete>delete</td></tr>");
});
});
})
});
</script>
</head>
<table border=1 id=table>
<tr><th>Name</th></tr>
<tr><td>Bombai</td><td id=1 class=edit>edit</td><td id=1 class=delete>delete</td></tr>
<tr><td>London</td><td id=2 class=edit>edit</td><td id=2 class=delete>delete</td></tr>
<tr><td>Rom</td><td id=3 class=edit>edit</td><td id=3 class=delete>delete</td></tr>
</table><label id=newbutton>New Place</label>
私は完全な解決策を手伝ってくれてありがとう、私は非常に感謝します! スクリプトで3つの新しい行を作成しましたが、[OK]をクリックすると、テーブルの最後に表示されます。編集可能な行の最後に表示させる方法はありません。 $( "tr:last")を$( "tr .edit:last")に変更しようとしましたが、OKをクリックすると行が表示されませんでした:(おそらくこの問題の解決策がありますか? – elhombre