我有一系列要绑定到我的 MVC 模型的复选框。所以我尝试获取复选框值并将这些值添加到一个隐藏的输入字段,该字段具有正确的 ID 以绑定到我的模型。
@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 -->