J'ai une série de cases à cocher que je veux lier à mon modèle MVC. J'essaie donc d'obtenir des valeurs de case à cocher et d'ajouter ces valeurs à un champ de saisie caché qui a l'ID approprié pour lier mon modèle.Manipulation de valeur d'élément 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="" />
Et mon code javascript est:
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
}
}
Comme vous l'aurez deviné, le code ne fonctionne pas. Je ne suis pas très bon en javascript, qu'est-ce que je fais mal.
Merci.
Modifier: Voici le code rendu
<!-- 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 -->
Alors, quel est votre * vrai * HTML, sans le script d'asp.net? Et, de même, votre * real * (nonasp.net) JavaScript? –
Pouvez-vous poster du code HTML et du code js? – peterm
J'ai ajouté le code HTML et JS rendu. –