-1

テーブルに新しいアイテムを追加し、合計値を更新するフォームを送信しています。フォームはjqueryダイアログにあり、以下は指定されたボタンオプションです。

                buttons: {
                    Save: function() {
                        $.post(mysaveurl , $("#fee_form").serialize(),
                            function(data) { 
                                var $mydata= $(data);
                                var newremovefeeurl = "${removefeeNoIds}" + $mydata.find("td:last").attr("id");
                                $mydata.find("td:last").attr("id", newremovefeeurl);
                                $( "#totalfees" ).before($mydata);  
                                enablespinner();
                                var mynewtotal = parseFloat($("#total").text()) + parseFloat($mydata.find(".cost").text());
        $("#total").empty().html(mynewtotal).toFixed(2);

       alert($("#total").text());           
       //var mynewtotalurl = $("#total").attr("updateurl");
       //$.post(mynewtotalurl , { newtotal: $("#total").text() } );
                            }                           
                        );
                        $( this ).remove();
                    }

投稿は、新しいテーブル行を既存のテーブルに追加し、要素内に格納されている値を ID "total" で更新するだけです。今のところ問題ありません。

コードでmynewtotalを使用して「合計」値をリセットした後。新しく更新された値である「total」の内容をアラートに進めます。Insted、更新された後でも古い値を取得します。

上記のコメント付きのコードで示されているように、別の投稿をしたいと思います。

お知らせ下さい。

4

2 に答える 2

0

私の推測では、この行は失敗しています:

parseFloat($("#total").text()) + parseFloat($mydata.find(".cost").text())

の値は$mydata.find(".cost").text()?

このラインにも

$("#total").empty().html(mynewtotal).toFixed(2);

私はあなたが欲しいと思います

$("#total").empty().html(mynewtotal.toFixed(2));

于 2011-12-07T18:29:13.267 に答える
-1

次のようになります。

$("#total").empty().html(mynewtotal).toFixed(2);

する必要があります

$("#total").empty().html(mynewtotal.toFixed(2));

jQuery関数の戻り値ではなく、合計で操作しているようにします。

于 2011-12-07T18:36:56.800 に答える