質問 > フロント機能 > 規格選択をラジオボタンにしたらうまくカゴにはいらない(規格2つ設定の時) |
フロント機能
スレッド表示 | 古いものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
hyugy |
投稿日時: 2014/4/16 15:36
対応状況: −−−
|
新米 登録日: 2012/8/4 居住地: 投稿: 10 |
Re: 規格選択をラジオボタンにしたらうまくカゴにはいらない(規格2つ設定の時) 返信いただいたことに気が付かなかったようです。
久々にログインしたことで気が付きました。 私のスキルではどうしてもうまく動かすことが出来ず、外部の方に修正いただくことで解決をいたしました。 ヒントを頂いたのに活用できず、すみません。 ご返信有難うございました。 |
sumida |
投稿日時: 2013/12/14 17:43
対応状況: −−−
|
仙人 登録日: 2013/2/10 居住地: 広島県呉市ときどき瀬戸内海 投稿: 641 |
Re: 規格選択をラジオボタンにしたらうまくカゴにはいらない(規格2つ設定の時) こちらのサイトに、ラジオボタンの選択状態のチェック例がありました。
http://www.tagindex.com/javascript/form/check5.html http://www.openspc2.org/reibun/JavaScript_technique/sample/03_form/019/ これによれば、checkedプロパティを確認しないと、選択されている項目か否かが判断できないようですが。 |
hyugy |
投稿日時: 2013/12/14 16:27
対応状況: −−−
|
新米 登録日: 2012/8/4 居住地: 投稿: 10 |
Re: 規格選択をラジオボタンにしたらうまくカゴにはいらない(規格2つ設定の時) 調べてみたところ、products.jsの
$(function() { // 規格1選択時 $('input[name=classcategory_id1]:radio') .change(function() { var $form = $(this).parents('form'); var product_id = $form.find('input[name=product_id]').val(); var $sele1 = $(this); var $sele2 = $form.find('input[name=classcategory_id2]:radio'); setClassCategories($form, product_id, $sele1, $sele2); }); // 規格2選択時 $('input[name=classcategory_id2]:radio') .change(function() { var $form = $(this).parents('form'); var product_id = $form.find('input[name=product_id]').val(); var $sele1 = $form.find('input[name=classcategory_id1]:radio'); var $sele2 = $(this); checkStock($form, product_id, $sele1.val(), $sele2.val()); alert($sele1.val() + "/" + $sele2.val()); }); }); このアラートの時点で、$sele1に、常に規格1の一番上の値が設定されていました。 var $sele1 = $form.find('input[name=classcategory_id1]:radio'); の表記が間違っているのでしょうか? |
hyugy |
投稿日時: 2013/12/14 12:35
対応状況: −−−
|
新米 登録日: 2012/8/4 居住地: 投稿: 10 |
規格選択をラジオボタンにしたらうまくカゴにはいらない(規格2つ設定の時) http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=13975&forum=10
の続きです。こちらを一度解決済みにしましたが、規格を2つ設定するとうまくいかないことが判明しました。 どうしても「規格1の一番上のもの(最初の投稿で例示した赤に当たるもの)」と「規格2の正しいもの」の組み合わせになる商品が入ってしまいます。 detail.tplとproducts.jsを下記の通り変更済みです ('select[name=classcategory_id1]') ↓ ('input[name=classcategory_id1]:radio') ('select[name=classcategory_id2]') ↓ ('input[name=classcategory_id2]:radio') POSTされたデータを見ると、classcategory_id1とclasscategory_id2には正しいものが入っていますが、product_class_idには「規格1の一番上のもの」と「規格2の正しいもの」の組み合わせにあたる商品コードが入ってしまいます。これが原因だと思います。 PHP以上にjavascriptの挙動が分からず、なかなか解決方法がわかりません。 修正方法を教えていただけないでしょうか?宜しくお願いします 追記です 動作がもう少しわかりました。 規格1を選ぶ>規格2を選ぶ>規格1を選ぶ とやると、今度は「規格1の正しいもの」と「規格2の一番上のもの」が入ります。 |
スレッド表示 | 古いものから | 前のトピック | 次のトピック | トップ |