На моем сайте ASP.NET MVC 3 есть таблица с товарами. Каждая строка имеет скрытое поле ввода с значением bool.Изменение значения скрытого ввода с помощью jQuery и его сохранение
<input name="@string.Format("items[{0}].IsStriked", i)" type="hidden" value="false" />
Существует обработчик щелчка кнопки для каждой строки:
$(".shoppingcart a.strike").live("click", function (e) {
e.preventDefault();
var $button = $(this);
var $tr = $button.parents("tr:first");
if ($("input[name$='IsStriked']", $tr).val() == "false") {
var $isStriked = $("input[name$='IsStriked']", $tr).val("true");
}
else {
var $isStriked = $("input[name$='IsStriked']", $tr).val("false");
}
var $form = $button.parents("form");
$form.submit();
});
Но когда я пытаюсь изменить этот флаг для нескольких строк, я не могу. Он работает только для одной строки. Я полагаю, что из-за значения ввода по умолчанию. Как я могу это исправить? Спасибо.
Я попытался изменить значение входа на $ ("вход [имя $ = 'IsStriked']", $ TR) .attr ('значение', 'ложь'); , но после отправки только одна строка имеет флаг. –
У вас есть более одного ввода с тем же именем? –
его имена динамичны и создают по счетчику: string.Format ("items [{0}]. IsStriked", i) –