0

J-QueryとAJAXを使用してres.phpページにデータを渡しています:-

Attempt.php (res.php が呼び出されるメイン ページ)

$.ajax(
                    {

                        url: "res.php", 
                        type: "POST",
                        data: data,     
                        success: function (data) 
                        {
                            var build_id='build_';
                            build_id += i;
                            alert(build_id);
                            $('#npc').append(data);
                            $('#build_id').attr('disabled','true');
                            var total = $("#build_id");
                            alert(total);
                        }
                    });

res.php ページでは、渡されたデータを使用してクエリを生成し、データベースからデータを取得して合計値を計算し、合計をテキスト ボックスに表示しています。

res.php

$i = mysql_real_escape_string($_POST['i']);

$query = "select * from ";
$query = $query . $building;
$query = $query . " where lvl=" . $level;
$query = $query . ";";

$result = mysql_query($query) or die('Error in Child Table!');
echo $i;
while( $data = mysql_fetch_assoc($result))
{
$total_res = $data['lumber'] + $data['clay'] + $data['iron'] + $data['crop'];
echo '<tr><td>'. $building. '</td><td>'. $level. '</td><td><input type="text" style="width:70px" id="build_' . $i . '" value="' . $total_res . '"></td></tr>';
}

id="build_' . $i . '"テキストボックスのIDを自動インクリメントするために使用しています。ここまではすべてうまくいきます。

attampt.php ページに戻ります。テキスト ボックスからデータにアクセスしようとすると、アクセスできません。

データにアクセスするために使用しているコードは次のとおりです。

                            var build_id='build_';
                            build_id += i;
                            $('#build_id').attr('disabled','true');
                            var total = $("#build_id");
                            alert(total);

コードの最後にあるアラート関数は、次の出力を提供します:-

[object Object]

テーブルにいくつかの値を含むテキスト ボックスのリストを追加し、テキスト ボックス内のすべての値の合計を計算しようとしています。助けてください。

4

1 に答える 1

1

$('#build_id')である必要が$('#'+build_id)あり、すべての値の合計を計算するにはvar total=0;、コールバック関数の外に置く必要があり、関数には含まれている必要があります

total += $('#'+build_id).val(); 

もう 1 つの問題は、テーブルの各行に同じ がありますが、id="build_$i"ID は一意でなければならないことです。

$iまた、テーブルの行に表示せずに、テーブルの先頭に表示するつもりですか?

于 2012-09-01T10:07:47.213 に答える