0

私は ajax 投稿から再試行された結果配列から行ごとにテーブルをレンダリングしています。各行には列呼び出しメニューgetActionMenuがあり、親が<td>このmenu列にある関数によってレンダリングされます。

1 つの入力テキスト ボックス<input type="number" class="input-mini maxStuNum">とボタンを動的に作成します<button class="btn btn-primary" type="button">SUBMIT</button>。ボタンを押すと、自分自身からその親までを検索し、クラス名で入力を見つけて、.maxStuNumその値を取得してさらに実行します。

ただし、Chrome は常にmaxStuNum未定義であると言います。

class="maxStuNum"デバッグ コンソールから、入力が既に見つかっているように見えます。でも意味がわからないinput: jQuery.fn.jQuery.init[1]

デバッグ:

input: jQuery.fn.jQuery.init[1]

0: input.input-mini maxStuNum



    function doSubmit(event){
        var tutor = event.data.row;
        var input = $(this).parent().children(".maxStuNum");
        var maxStuNum = input.attr('value');

    }

    function getActionMenu(row, parent){

        var div = $('<div class="input-append">');
        var input = $('<input type="number" class="input-mini maxStuNum">');

        input.attr('value',row.maxStuNum);
        var btn =$('<button class="btn btn-primary" type="button">SUBMIT</button>').unbind().bind('click', {'row':row}, doSubmit);;
        div.append(input);
        div.append(btn);
        parent.append(div);
    }
4

1 に答える 1

2

この行を除いて、コードは問題ありません

var maxStuNum =input.attr('value');

使用する

var maxStuNum = input.val();
于 2013-05-13T14:57:42.680 に答える