Несколько входов с одним и тем же сценарием
Я использую x-editable плагин для редактирования различных элементов в моем приложении. У меня есть одна таблица, и есть столбец, который мне нужно сделать редактируемым, но для всех строк.
Это мой код:
JavaScript:
<script type="text/javascript">
$(document).ready(function() {
//toggle `popup` / `inline` mode
$.fn.editable.defaults.mode = 'popup';
$('#confirm_assistance').editable({
url: '/post'
});
});
</script>
HTML (только две строки таблицы):
<tr class="gradeA">
<td>Pepa Loraine</td>
<td>No</td>
<td>25</td>
<td></td>
<td></td>
<td>1825€</td>
<td>250.00€</td>
<td>0.00€</td>
<td>1575.00€</td>
<td><a href="#" id="confirm_assistance" data-type="text" data-placement="right" data-title="Enter username" data-pk="22">0</a></td>
<td>2014-05-13 00:29:29</td>
<td>Ibiza Rent a Car </td>
</tr>
<tr class="gradeA">
<td>Pepa Loraine</td>
<td>No</td>
<td>25</td>
<td></td>
<td></td>
<td>1825€</td>
<td>250.00€</td>
<td>0.00€</td>
<td>1575.00€</td>
<td><a href="#" id="confirm_assistance" data-type="text" data-placement="right" data-title="Enter username" data-pk="30">0</a></td>
<td>2014-05-13 00:30:14</td>
<td>Juan Del Árbol</td>
</tr>
Первый работает, и я могу редактировать и отправлять данные на сервер, но следующие входные данные не работают.
В любом случае, в одном скрипте можно определить несколько элементов с одинаковым идентификатором?
2 ответа
Вы не можете иметь два элемента с одинаковым атрибутом ID. Вам нужно будет использовать класс вместо
<script type="text/javascript">
$(document).ready(function() {
//toggle `popup` / `inline` mode
$.fn.editable.defaults.mode = 'popup';
$('.confirm_assistance').editable({
url: '/post'
});
});
</script>
<tr class="gradeA">
<td>Pepa Loraine</td>
<td>No</td>
<td>25</td>
<td></td>
<td></td>
<td>1825€</td>
<td>250.00€</td>
<td>0.00€</td>
<td>1575.00€</td>
<td><a href="#" class="confirm_assistance" data-type="text" data-placement="right" data-title="Enter username" data-pk="22">0</a></td>
<td>2014-05-13 00:29:29</td>
<td>Ibiza Rent a Car </td>
</tr>
<tr class="gradeA">
<td>Pepa Loraine</td>
<td>No</td>
<td>25</td>
<td></td>
<td></td>
<td>1825€</td>
<td>250.00€</td>
<td>0.00€</td>
<td>1575.00€</td>
<td><a href="#" class="confirm_assistance" data-type="text" data-placement="right" data-title="Enter username" data-pk="30">0</a></td>
<td>2014-05-13 00:30:14</td>
<td>Juan Del Árbol</td>
</tr>
Идентификаторы должны быть уникальными. Вот цитата из другого ответа:
Да, он должен быть уникальным. HTML4:
http://www.w3.org/TR/html4/struct/global.html
Раздел 7.5.2:
id = name [CS] Этот атрибут присваивает имя элементу. Это имя должно быть уникальным в документе.
HTML5:
http://www.w3.org/TR/html5/elements.html
Атрибут id указывает уникальный идентификатор своего элемента (ID). Значение должно быть уникальным среди всех идентификаторов в домашнем поддереве элемента и должно содержать хотя бы один символ. Значение не должно содержать пробелов.