2016-04-22 5 views
0

Как получить значение элемента Bootstrap TouchSpin внутри таблицы? В настоящее время я ничего не получаю, так как не считаю, что это нахождение элемента.Как получить значение TouchSpin внутри таблицы

Создание touchspin и вставки в таблицу

var table = document.getElementById("createOrderTable"); 
var rowCount = table.rows.length; 
var row = table.insertRow(rowCount); 
row.id = 'row' + rowCount; 

// TouchSpin element 
var cell1 = row.insertCell(1); 
var touchSpinID = 'touchspin' + rowCount; 
cell1.innerHTML = "<input id='" + touchSpinID +"' type='text' value='1' name='" + touchSpinID +"'>"; 
cell1.id = 'cell' + touchSpinID; 

//Init TouchSpin 
$("input[name='" + touchSpinID +"']").TouchSpin({ 
verticalbuttons: true, 
min: 0, 
max: 100000000, 
}); 

переборе таблицы и получить значение Touchspin, ни один из методов ниже работ.

var table = document.getElementById("createOrderTable"); 
var rowCount = table.rows.length; 
var productArray = []; 

for(i = 1; i < table.rows.length; i++){ 
    var touchspinID = 'touchspin' + i; 
    var touchspinValue = 0;   
    cellID = 'cell' + touchspinID; 

    $(cellID).find(touchspinID).each(function(){ 
     touchspinValue = this.val(); 
     console.log(touchspinValue); 
    }); 

    $("#createOrderTable tr").each(function() { 
     $('td', this).each(function() { 
      var value = $(this).find(touchspinID).val(); 
      console.log(value); 
     }) 
    }) 
} 
+0

Как выглядит ваш html? Вы могли бы показать примерный фрагмент? – Yass

ответ

1

Глядя на ваш код, я считаю, что проблема лежит touchspinID и cellID в том, что они оба отсутствует «#», чтобы указать, что вы ищете элементы с этими конкретными id с.

Изменение этих двух линий от:

var touchspinID = 'touchspin' + i; 
cellID = 'cell' + touchspinID; 

к:

var touchspinID = '#touchspin' + i; 
cellID = '#cell' + touchspinID; 

должен устранить проблему. Кроме того, вам не нужно использовать .each после вызова .find как клетка будет только когда-либо один элемент «touchspin» и id s всегда должен быть уникальным:

var touchspinValue = $(cellID).find(touchspinID).val(); 
console.log(touchspinValue); 

Если выше не поможет решить вопрос, включите таблицу html в свой вопрос.

Смежные вопросы