2016-07-05 2 views
0

У меня есть DataTable с генерируемым полем ввода и кнопкой. Когда я нажимаю кнопку, я хочу, чтобы console.log значение внутри поля ввода .. может кто-то помочь? Вот мой генерироваться таблица:Как вернуть пользовательское входное значение datatable

var productsTable = $('#productsTable').DataTable({ 
    responsive: true, 
    "ajax": { 
     "url": "/api/products/", 
     "dataSrc": "" 
    }, 
    "columns": [ 
     { "title": "Product Code", "data": "product_code" }, 
     { "title": "Supplier", "data": "supplier" }, 
     { "title": "Category", "data": "category"}, 
     { "title": "Description", "data": "description"}, 
     { "title": "Price", "data": "invoice_price"}, 
     { "title": "Quantity", "defaultContent": "<input class='quantity' type='number'>" }, 
     { "title": "", "defaultContent": "<button class='btn btn-primary'>Click Me!</button>" }, 
    ] 
    }); 

А вот моя попытка щелкните событие:

$("#productsTable tbody").on('click', 'button', function() { 
    var quantity = $(this).parents("tr:first").find('.quantity input').val(); 
    console.log(quantity); // returns undefined 
}); 

Может кто-то помочь?

Заранее благодарен!

ответ

2

Попробуйте пожалуйста

var quantity = $(this).parents("tr:first").find('.quantity').val(); 
+0

Это хорошо работает! У меня есть другая аналогичная проблема - когда я нажимаю кнопку, мне нужно также вернуть «product_code». 'var product_code = productsTable.row ($ (this) .parents ('tr')). data(). product_code;' работает, когда таблица полноразмерна, но не работает, когда таблица находится в режиме реагирования ... у вас есть идея, как я могу вернуть «product_code» в отзывчивом режиме? Заранее спасибо! –

+0

@ user1547174 mmm На самом деле нет, мне нужно посмотреть документы! – MoustafaS

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