他の非常によく似たWebサイトで使用したクレジットカード支払いフォームが記載されたWebサイトがあります。ページが読み込まれると、クレジットカード支払いオプションが自動的に選択され、通常はクレジットカードのドロップダウンリストが表示されるという問題があります。ただし、このサイトでは、すでに選択されていると表示されているラジオボタンを2回クリックするまで、リストは表示されません。何がこれを引き起こしているのかについて誰かが何か情報を持っているなら、私は本当に感謝しています!カートに何かを追加してカートページを表示すると、www.seed-city.com
(NSFW )で問題が発生する可能性があります。お時間をいただきありがとうございます。
ここで問題を確認できます。
http://www.seed-city.com/index.php?option=com_virtuemart&page=shop.cart&add_id[]=270&qadd_270=10
私が持っているコードは次のとおりです。
<div class="yagendoo_vm_checkout_credit_input">
<table>
<tr>
<td nowrap width="10%" align="left"><?php echo $VM_LANG->_('VM_CREDIT_CARD_TYPE'); ?>:</td>
<td>
<script language="Javascript" type="text/javascript"><!--
writeDynaList( 'class="inputbox" name="creditcard_code" size="1"',
orders, originalPos, originalPos, originalOrder );
//-->
</script>
<?php
$db_cc->reset();
$payment_class = $db_cc->f("payment_class");
$require_cvv_code = "YES";
if(file_exists(CLASSPATH."payment/$payment_class.php") && file_exists(CLASSPATH."payment/$payment_class.cfg.php")):
require_once(CLASSPATH."payment/$payment_class.php");
require_once(CLASSPATH."payment/$payment_class.cfg.php");
$_PAYMENT = new $payment_class();
if( defined( $_PAYMENT->payment_code.'_CHECK_CARD_CODE')):?>
<?php $require_cvv_code = strtoupper( constant($_PAYMENT->payment_code.'_CHECK_CARD_CODE'));?>
<?php endif;
endif;?>
</td>
</tr>
<tr valign="top">
<td nowrap width="10%" align="left">
<label for="order_payment_name">
<?php echo $VM_LANG->_('PHPSHOP_CHECKOUT_CONF_PAYINFO_NAMECARD') ?>:
</label>
</td>
<td>
<input type="text" class="inputbox" id="order_payment_name" name="order_payment_name" value="<?php if(!empty($_SESSION['ccdata']['order_payment_name'])) echo $_SESSION['ccdata']['order_payment_name'] ?>" autocomplete="off" />
</td>
</tr>
<tr valign="top">
<td nowrap width="10%" align="left">
<label for="order_payment_number"><?php echo $VM_LANG->_('PHPSHOP_CHECKOUT_CONF_PAYINFO_CCNUM') ?>:</label>
</td>
<td>
<input type="text" class="inputbox" id="order_payment_number" name="order_payment_number" value="<?php if(!empty($_SESSION['ccdata']['order_payment_number'])) echo $_SESSION['ccdata']['order_payment_number'] ?>" autocomplete="off" />
その他のコード:
foreach( $cards as $code => $name ) {
$script .= "orders[".$i++."] = new Array( '".addslashes($db_cc->f("payment_method_name"))."','$code','$name' );\n";
}
}
$script .= "function changeCreditCardList() { \n";
$script .= "var selected_payment = null;
for (var i=0; i<document.adminForm.payment_method_id.length; i++)
if (document.adminForm.payment_method_id[i].checked)
selected_payment = document.adminForm.payment_method_id[i].id;\n";
$script .="changeDynaList('creditcard_code',orders,selected_payment, originalPos, originalOrder);\n";
$script .="}\n";
$script .="//-->\n";
$script .="</script>\n";
$script .= '<noscript>'.ps_html::selectList('creditcard_code', key($cards), $cards ).'</noscript>';
return $script;
}
}