Ниже приведены фрагменты, которые показывают (упрощенный) конечный продукт, на который я нацеливаюсь (вы можете видеть, запускаете ли вы код).Передача параметра функции jQuery для динамических целей
Проблема в том, что это не масштабируемо. Моя фактическая таблица генерируется через цикл PHP и длиной в сотни строк. Мне нужно каким-то образом сказать jQuery ", если я нажму кнопку редактирования в строке 60, а затем выполните следующие изменения в 60-м имени, возрасте и т. Д. Моя фактическая страница написана на PHP, и я могу сказать, что цикл генерировать Edit кнопки с целями, которые приравниваются к итерации цикла (ID = $ я), но я не знаю, как сделать мой JQuery код гибким.
$(document).ready(function() {
$("#1").click(function() {
$("#name1").html("<input type='text' name='newname1' value='' size='2' />");
$("#age1").html("<input type='text' name='newage1' value='' size='2' />");
$("#button1").html("<input type='button' name='newbutton1' value='submit' />");
});
$("#2").click(function() {
$("#name2").html("<input type='text' name='newname2' value='' size='2' />");
$("#age2").html("<input type='text' name='newage2' value='' size='2' />");
$("#button2").html("<input type='button' name='newbutton2' value='submit' />");
});
$("#3").click(function() {
$("#name3").html("<input type='text' name='newname3' value='' size='2' />");
$("#age3").html("<input type='text' name='newage3' value='' size='2' />");
$("#button3").html("<input type='button' name='newbutton3' value='submit' />");
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr>
<th>Name</th>
<th>Age</th>
</tr>
<tr>
<td id='name1'>Pete</td>
<td id='age1'>32</td>
<td id='button1'><input id='1' type='button' value='edit' /></td>
</tr>
<tr>
<td id='name2'>Brian</td>
<td id='age2'>25</td>
<td id='button2'><input id='2' type='button' value='edit' /></td>
</tr>
<tr>
<td id='name3'>John</td>
<td id='age3'>30</td>
<td id='button3'><input id='3' type='button' value='edit' /></td>
</tr>
</table>
Привет, я не могу заставить ваш код работать. Можете ли вы объяснить, что происходит в начальном селекторе .... $ ("# input [value = 'edit']") ....? – Tortooga
Эта функция является общей для всех кнопок со значением редактирования. Поэтому всякий раз, когда нажимается кнопка редактирования, это будет вызываться. 'id' var будет содержать 1,2,3, на основе которого была нажата кнопка редактирования, тогда все будет изменено на основе этого id – dpanshu
Возможно ли, что в этом разделе есть синтаксическая ошибка? Если я заменил его на $ («# 1»), то ваш код будет работать (но только для первой строки, конечно). Извините, что я совершенно новый с javascript. – Tortooga