2013-05-13 115 views
0

我從ajax post重試的結果數組中逐行渲染一個表,並且每行都有列調用菜單,我通過函數getActionMenu呈現它,其中父項爲<td>,在此menu列中。如何從父級選擇輸入並獲取輸入的值?

我動態創建一個輸入文本框<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); 
    } 
+1

'變種maxStuNum = $ (this).siblings('。maxStuNum')。val();'或者如果它不是父類的直接子類,請使用find() - > var maxStuNum = $(this).parent()。 find(「。maxStuNum」)。val()' – adeneo 2013-05-13 14:50:18

+1

http://api.jquery.com/val/ – 2013-05-13 14:51:01

+0

謝謝你,Adeneo,它的工作原理!我是使用jquery的新手,不知道爲什麼我的方式不行。 – sureone 2013-05-13 14:55:42

回答

2

你的代碼是正確的,除了這條線

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

使用

var maxStuNum = input.val(); 
相關問題