我有一系列複選框,我想綁定到我的MVC模型。所以我嘗試獲取複選框值並將這些值添加到隱藏的輸入字段,該字段具有適當的Id以綁定到我的模型。jQuery元素值操作
@foreach (var answer in question.Answers)
{
<input type='checkbox' id='@answer.Id' value='@(answer.AnswerText)' onchange="toggleHidden(this)"/>
}
<input type="hidden" id='[@countHolder]' name='WrappedAnswers' value="" />
我的JavaScript代碼:
function toggleHidden(elem) {
var isChecked = $(elem).is(":checked");
if (isChecked) {
var checkString = elem.value + "|";
var currentString = $('#[@(countHolder)]').val();
$('#[@(countHolder)]').val(currentString + checkString);
}
else {
// Remove checkString from $('#[@(countHolder)]').value
}
}
正如你猜到了,代碼不能正常工作。我在JavaScript中不是很好,我做錯了什麼。
謝謝。
編輯:這裏是渲染代碼
<!-- Answers -->
<input type='checkbox' id='158' name='WrappedAnswers' value='Answer 1' onchange="toggleHidden(this)"/>
<input type='checkbox' id='159' name='WrappedAnswers' value='Answer 2' onchange="toggleHidden(this)"/>
<input type='checkbox' id='160' name='WrappedAnswers' value='Answer 3' onchange="toggleHidden(this)"/>
<input type="hidden" id='[5]' name='WrappedAnswers' value="" />
<script type="text/javascript">
function toggleHidden(elem) {
var isChecked = $(elem).is(":checked");
if (isChecked) {
var checkString = elem.value + "|";
$('#[5]').val($('#[5]').val() + checkString);
}
else {
}
}
</script>
<!-- End Answers -->
那麼,您的*真實* HTML,沒有asp.net腳本的東西呢?而且,類似地,你的* real *(non-asp.net)JavaScript? – 2013-03-07 21:45:10
你能發佈呈現的HTML和js代碼嗎? – peterm 2013-03-07 21:45:42
我已經添加了呈現的HTML和JS代碼。 – 2013-03-08 09:55:35