Я использовал jquery для разворачивания таблицы, и мне нужно получить определенное значение строки, используя пример события click, показанный ниже:
Jquery:
$(document).ready(function () {
$('#UsertTypeName').change(function () {
$.get('/Home/Userdetails/' + $('#UsertTypeName').val(), function (data) {
var items = "<table><tr><th>Name</th><th>Email_id</th><th>UserType</th><th colspan='2'>Actions</th></tr>";
$.each(data, function (i, count) {
items += "<tr><td >" + count.FirstName + "</td><td class="+'test'+">" + count.EmailId + "</td><td>" + count.UsertTypeName + "</td><td>" + '<input type="Submit" value="Edit" class="editdata" />' + "</td><td>" +'<input type="submit" Value="Delete" id="deldata">' + "</td></tr>";
});
$('#rdata').html(items);
items += "</table>";
$('.editdata').click(function () {
alert("edit working");
var url = "/Home/Edit/";
$.ajax({
type: "post",
url: url,
data: $('.test').val(),
success: function (data) {
$('#testing').html(data)
}
});
});
});
});
});
Я попытался получить значение электронной почты, используя. $ Ajax, но возвращает только нулевое значение
Я не мог найти, где мне не хватает ценности. Можете ли вы мне помочь. Продвиньте благодарность.
Если вы хотите получить значение count.EmailId
, которое оно походит на вас, когда кто-то нажимает на <input type="Submit" value="Edit" class="editdata"/>
в той же строке, вы можете используйте jQuery, чтобы найти родительский <tr>
а затем найдите <td>
содержащий данные, не ссылаясь на класс .test
, который вернет массив. что-то вроде этого:
var emailId = $(this).parent('td').parent('tr').find('td:eq(1)').text();
Это находит второе <td>
в той же строке, что и input
ваших кликов пользователей и сохраняет текст в столбце, emailId
:
$('.editdata').click(function () {
alert("edit working");
var emailId = $(this).parent('td').parent('tr').find('td:eq(1)').text();
var url = "/Home/Edit/";
$.ajax({
type: "post",
url: url,
data: emailId,
success: function (data) {
$('#testing').html(data)
}
});
В коде есть проблемы с дизайном, которые я хотел бы отметить. Предполагая, что ваша таблица будет иметь более одной строки в своем теле, <input type="submit" Value="Delete" id="deldata">
приведет к тому, что несколько элементов с deldata
их идентификатором, что вызовет некоторые головные боли, когда вы "пытаюсь присоединить обработчики событий к идентификатору, потому что поле идентификатора должно быть уникальным.