ホーム » ブログ » ECCUBEのお気に入り商品削除できない障害の解決方法
このエントリーをはてなブックマークに追加
@2015/07/28

スポンサーリンク
Favorite.phpからお気に入り商品削除はうまくできますが、別のページで同じjavascriptメッソドなのに、削除できない障害が発生しました。
ここは別のページ(例:hoge.php)で、お気に入り商品削除できない障害の解決方法をメモーします。

Favorite.tplファイルで削除のコード

<a href="javascript:eccube.setModeAndSubmit('delete_favorite','product_id','<!--{$product_id|h}-->');">

Eccube.jsでsetModeAndSubmitメッソドを見てみると、Action名称は指定していないため、デフォルトActionを使っている。
即ち、favorite.phpへサブミットする。
しかし、別のページhoge.phpから「お気に入り商品削除」するとき、favorite.tplでの削除方法をそのまま使ったら、
デフォルトActionはhoge.phpとなり、削除実行したら、hoge.phpへサブミットしてしまう。もちろん削除できません。
そのため、favorite.tplでのjavascriptを使えなくて、新たな「お気に入り商品削除」メッソドを作成します。


以下は僕作成した「お気に入り商品削除のJavascriptメッソド」です。

eccube.changeActionSetModeAndSubmit = function(act, form, mode, keyname, keyid) {
    	var formElement = eccube.getFormElement(form);
        formElement.attr("action", act);
        document.form1.mode.value = mode;
        if(keyname !== undefined && keyname !== "" && keyid !== undefined && keyid !== "") {
            document.form1[keyname].value = keyid;
        }
        document.form1.submit();
    };

Hoge.tplでの削除コードは下記通り:

<a href="javascript:eccube.changeActionSetModeAndSubmit('favorite.php','form1','delete_favorite','product_id','<!--{$product_id|h}-->');">
     削除
</a>

以上、ECCUBEでお気に入り商品削除できない障害の解決方法です。


♪ 当記事がお役に立ちましたらシェアして頂ければ嬉しいです。
0人
このエントリーをはてなブックマークに追加


★ 当記事を閲覧の方は下記の【関連記事】も閲覧していました。

お名前:

 

EMAIL:

 

URL:

 

認証コード:

zanmai.net-safecode

 


※会員の方は認証コードを要らないから、新規登録をオススメ!

check