私はウェブサイトで作業していますが、問題が発生しました。事前に設定したり、再入力slected値にするために、CodeIgniterでは、ここで見られ、あなたはあなたの問題を解決するためにset_radioを使用することができます:CodeIgniter - ラジオ入力時のPHP Set_Radio
<td>Do You Have a PayPal Account <span class="error">*</span> : </td>
<td colspan="2" align="left" valign="top"><label>
<!-- used for validation -->
<input type="hidden" id="temp_mid" value="" />
<input name="mail_account" type="radio" id="p_same" value="same" onclick="dohide_show(this.value);" <?php echo set_radio('mail_account', 'same'); ?>/> Yes(same as email address as above.)<br/>
<input name="mail_account" type="radio" id="p_diff" value="diff" onclick="dohide_show(this.value);" <?php echo set_radio('mail_account', 'diff'); ?>/> Yes(different than above.)<br/>
<input name="mail_account" type="radio" id="p_checkInMail" value="checkInMail" onclick="dohide_show(this.value);" <?php echo set_radio('mail_account', 'checkInMail'); ?>/> No(I would prefer to receive a check in the mail.)
<?php echo form_error('mail_account'); ?>
</td>
前のラジオボタンがあれば選択されているように、これは、検証後に完全に正常に動作しますフォームの別の部分にエラーがあります。しかし、ユーザーがエラーを修正した後にページを再送信しようとすると、前に選択したオプションでラジオボタンが視覚的に選択されていてもラジオボタンを再度クリックするよう求められます。フォームを再送信するには、ラジオボタンをもう一度選択する必要があります。呼び出されたアラートはここに表示されます:
function validate_playpal()
{
var temp=$('#temp_mid').val();
if(temp=="")
{
alert('Please select the PayPal account option.');
$('#p_same').focus();
return false;
}
if(document.getElementById('p_diff').checked== true && document.getElementById('paypal_emailid').value=='')
{
alert('Please provide your PayPal email address.');
document.getElementById('paypal_emailid').focus();
return false;
}
if(document.getElementById('paypal_emailid').value!='')
{
if(!email_format(document.getElementById('paypal_emailid').value)){
alert('Please enter valid email address.');
document.getElementById('paypal_emailid').value="";
document.getElementById('paypal_emailid').focus();
return false;
}
}
return true;
}
フォームが正しく再投入されているにも関わらず、なぜこれが機能しないのか分かりませんか?ありがとう。
EDIT:Mid_tempが何を求めて皆のために
、彼らが選択する必要がない場合はそれだけでボタンを隠すように私には見えます。ここ
$('#bx').hide();
if(document.getElementById('p_diff').checked==true){
$('#bx').show();
}
function dohide_show(val){
if(val=='diff')
{
$('#bx').show();
$('#paypal_emailid').val('');
document.getElementById('p_diff').checked=true;
$('#temp_mid').val('clicked');
}
else if(val=='same')
{
$('#bx').hide();
$('#paypal_emailid').val($('#email_id').val());
$('#temp_mid').val('clicked');
}
else
{
$('#bx').hide();
$('#paypal_emailid').val($('#email_id').val());
$('#temp_mid').val('clicked');
}
}
と、完全に別のファイルに:
function hide_box()
{
$('#bx').hide();
$('#paypal_emailid').val('');
$('#temp_mid').val('clicked');
}
function show_box()
{
$('#bx').show();
$('#paypal_emailid').focus();
$('#temp_mid').val('clicked');
}
また、ペイパルのメールIDがちょうどPayPalのメールアドレスをチェックして、私が持っているコードでは、これらは、それが言及されている唯一の場所ですユーザーがPayPalアカウントを持っている場合は、それを入れます。みんな助けてくれてありがとう。
をhelps-ホープ;'関数 – Mikhail
がどのようなアラートが呼ばれているのですか? 'paypal_emailid'要素とは何ですか?どの関数が 'temp_mid'要素に値を設定しますか?あなたの問題に関する詳細情報を提供してください。私はあなたを助けようとします。 – Mikhail
私はこの明日の詳細については、私が今アクセスすることはできないので、あなたにそれをもっと知ろうとします。申し訳ありません – TheChes44