0

私の元の質問を編集しました

問題は、新しく追加された要素からidを設定する場合、または関数から引数noteidを使用する場合でも同じです。その結果、この関数がループした場合、すべての要素が同じIDを取得します。

新しく追加された要素ごとに異なるIDを設定するにはどうすればよいですか?

現在のように、submitイベントの値はすべての要素で同じです。この関数をループしてデータベースエントリに基づいて複数のメモを作成する必要がある場合、最後に追加されたメモIDのみが記憶され、すべての要素が同じIDを使用します。

ページを表示するとどうなるかを確認できます 。最初に、矢印の付いたアイコンをクリックして2つのメモのように作成する必要があります。次に、一番上のメモを削除してから、ページを更新します。2番目のものが削除されていることがわかります。

newnote(tbnoteid){

    $('.wrappertbnote:last').load('tbnote.html .paneltbnote', function() { 
       var t = this;
       var tt= $(t).children(1).children("form").children("#frmnoteid");
        $(tt).attr('id' , tbnoteid);

        $(".frmremovetbnote:last").submit(function(){   
             var idvalue = $(tt).attr('id');

             $.post("tbnotesact.php",{
           noteid: tbnoteid,
           action: "remove",
           time: timestamp
           }, function(xml) {

ありがとう、リチャード

4

1 に答える 1

1

この関数は別の関数からループされることを覚えておく必要があります。あなたは私のページからそれを見ることができます

私が信じているのと同じ問題についてもこのコメントを見つけましたが、解決策がわかりません

私はそれをテストする必要があります

私はそれをテストする方法を知りませんでした

loadメソッドとsubmitイベントのバインドを削除することで問題を解決しました。jqueryで処理するのが複雑になっている可能性があります。

代わりにオフロードで、prependメソッドを使用し、ライブで通常のクリックイベントを使用します

また、変数を追加する方がはるかに簡単です。PHPからのエコーとほぼ同じです

于 2009-05-19T12:18:20.443 に答える