私が得ることができるすべての助けに感謝します!
Happy.jsを使用してクライアント側でフォームを検証しています
検証したい最初の入力は、はい/いいえのラジオボタンです。この入力の ID は、2 つの div を非表示/表示する JavaScript 関数に関連付けられているため、id を happy.js と同じになるように変更することはできません。
<input id="id_radio1" type="radio" name="name_radio1" value="Yes" aria-required="true" required/><label for ="id_radio1">Yes</label>
<input id="id_radio2" type="radio" name="name_radio2" value="No" aria-required="true" required//><label for ="id_radio2">No</label>
私の happy.js スクリプトは次のとおりです。最初のフィールド #id_radio1 は問題のコードです。
<script>
$(document).ready(function () {
$('#awesomeForm').isHappy({
fields: {
// reference the field you're talking about, probably by `id`
// but you could certainly do $('[name=name]') as well.
'#id_radio1': {
required: true,
message: 'Please specify Gas Spring Type'
},
'#qnty': {
required: true,
message: 'Please specify # of Units'
},
'#street': {
required: true,
message: 'Please enter your Street',
},
'#city': {
required: true,
message: 'Please enter your City',
},
'#state': {
required: true,
message: 'Please enter your State/Province',
},
'#country': {
required: true,
message: 'Please enter your Country',
},
'#zip': {
required: true,
message: 'Please enter your Zip/Postal Code',
},
'#email': {
required: true,
message: 'Please enter a valid Email Address',
test: happy.email // this can be *any* function that returns true or false
},
}
});
});
</script>
ご協力ありがとうございました。
参考までに、これは DIV スイッチのスクリプトです。
<script language="javascript">
$(document).ready(function () {
$('#div1,#div2').hide();
$('#id_radio1').click(function () {
$('#div2').hide('fast');
$('#div1').show('fast');
});
$('#id_radio2').click(function () {
$('#div1').hide('fast');
$('#div2').show('fast');
});
});</script>