我有一系列复选框,我想绑定到我的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