Ich verwende die jQuery Form plugin, um eine 'Ajax' von meinem Formular zu tun, die aus etwa 4 Radio wählt besteht. Ich möchte jedoch, dass das Formular nicht gesendet wird, wenn keiner der Optionsfelder ausgewählt wurde.Formular nicht senden, wenn nichts ausgewählt, mit jQuery AjaxForm Plugin
Hier ist mein Versuch, so weit, half ich von so Code habe in einem anderen SO beantworten und der Plugin-Dokumentation gefunden:
$(document).ready(function() {
var options = { target: '#response',
type: 'get',
beforeSubmit: ischecked
}
$('#answer').ajaxForm(options);
});
function ischecked(formData, jqForm, options){
if ($('input:radio', $('#answer').is(':checked')))
{
return true;
}
else
{
return false;
}
}
Ich bin sicher, dass der Rückruf ischecked
ausgeführt zu werden (alert()
s wird Feuer usw.), aber der Code selbst scheint nicht zu erkennen, dass keine Optionsfelder ausgewählt sind, und das Formular wird weiterhin gesendet.
Hier ist das HTML-Formular:
<form action="score.php" id="answer">
<div style="margin-top: 0pt;" class="ans">
<input type="hidden" value="127" name="question_id"/>
<input type="hidden" value="f5043d5122cec6eb981c9a2fc7a0a653" name="user_id"/>
<input type="hidden" value="36" name="question_key"/>
<input type="hidden" value="37" name="next_key"/>
<ul id="answers">
<li>
<label>
<input type="radio" value="464" name="answer_id"/> mod_rewrite </label>
</li>
<li>
<label>
<input type="radio" value="465" name="answer_id"/> XML Site Map </label>
</li>
<li>
<label>
<input type="radio" value="466" name="answer_id"/> Tiny URL </label>
</li>
<li>
<label>
<input type="radio" value="467" name="answer_id"/> both a) and b) </label>
</li>
<li>
<label>
<input type="radio" value="468" name="answer_id"/> a), b) and c) can all be used to make it easier for Google to index your dynamically generated URLs. </label>
</li>
</ul>
</div>
<input type="submit" value="Submit Answer and Get Result" id="answer_submission"/>
</form>
wenn ich alert tun ($ ('# Antwort: checked') Länge.) Es ist immer 0, auch wenn ich eine der Checkboxen ausgewählt. – Ian
Können Sie Ihren HTML-Code posten? – SolutionYogi
Wenn Ihre Optionsfelder mit dem Namen 'myGroup' gruppiert sind, versuchen Sie $ ('input [name = "myGroup"]: überprüft'). Länge – SolutionYogi