收藏夹项目Javascript

收藏夹项目Javascript,javascript,magento,onclick,favorites,Javascript,Magento,Onclick,Favorites,我正在做一个功能,添加一个喜爱的项目,有一个心脏图标,当你点击它应该改变颜色从灰色到红色,并保存状态。 以前,我有一个选择框,可以保存状态,但图像无法适应功能 选择我可以保存和更改状态的框: <select id="priority-select-<?php echo $id ?>" class="form-control" name="priority[<?php echo $id ?>]" title="<?php echo $this->__('

我正在做一个功能,添加一个喜爱的项目,有一个心脏图标,当你点击它应该改变颜色从灰色到红色,并保存状态。 以前,我有一个选择框,可以保存状态,但图像无法适应功能

选择我可以保存和更改状态的框:

 <select id="priority-select-<?php echo $id ?>" class="form-control" name="priority[<?php echo $id ?>]" title="<?php echo $this->__('Priority') ?>">
                                <?php foreach($_hlp->getPriorities() as $k=>$v):?>
                                    <option value="<?php echo $k ?>" <?php if ($k == $item->getPriority()){ echo "selected"; } ?>><?php echo $this->htmlEscape($v) ?></option>
                                <?php endforeach; ?>
                            </select>

可以解决以下问题:

图标:

                        <img id="heart-m-<?php echo $id ?>"
                             src="<?php if ($item->getPriority() < 1) {
                                 echo $this->getSkinUrl('images/heart-m-disabled.png');
                             } else {
                                 echo $this->getSkinUrl('images/heart-m.png');
                             } ?>"
                             alt="" onclick='adicionaFav(<?php echo $id ?>)'/>

                    </div>
getPriority()<1){
echo$this->getSkinUrl('images/heart-m-disabled.png');
}否则{
echo$this->getSkinUrl('images/heart-m.png');
} ?>"
alt=”“onclick='adicionaFav()'/>
Javascript代码:

<script type="text/javascript">
    var $jq = jQuery.noConflict();


    var heart_m = "<?php echo $this->getSkinUrl('images/heart-m.png') ?>";
    var heart_m_disabled = "<?php echo $this->getSkinUrl('images/heart-m-disabled.png') ?>";


    var valor;
    function adicionaFav(id) {

        if(document.getElementById(id).src == "<?php echo $this->getSkinUrl('images/heart-m-disabled.png');?>"){

            document.getElementById(id).src = "<?php echo $this->getSkinUrl('images/heart-m.png');?>";
            priorityChange(1, id);
            $jq('#priority-select-' + id).val('0');

        }
        else{

            document.getElementById(id).src = "<?php echo $this->getSkinUrl('images/heart-m-disabled.png');?>";
            priorityChange(0, id);
            $jq('#priority-select-' + id).val('1');


        }


    }


    function priorityChange(size,id) {



        if(size==1){

            $jq("#heart-m-" + id).attr("src", heart_m);
        }else{

            $jq("#heart-m-" + id).attr("src", heart_m_disabled);
        }/*
         switch (size) {
         case 0: {
         $jq("#heart-m-" + id).attr("src", heart_m_disabled);
         $jq("#heart-l-" + id).attr("src", heart_l_disabled);
         break;
         }

         case 1: {
         $jq("#heart-m-" + id).attr("src", heart_m);
         $jq("#heart-l-" + id).attr("src", heart_l_disabled);
         break;
         }

         case 2: {
         $jq("#heart-m-" + id).attr("src", heart_m);
         $jq("#heart-l-" + id).attr("src", heart_l);
         break;
         }
         }*/
    }
/*
    function prioritySelect(size, id) {
        switch (size) {
            case 0: {
                priorityChange(size, id);
                $jq('#priority-select-' + id).val('0');
                break;
            }

            case 1: {
                priorityChange(size, id);
                $jq('#priority-select-' + id).val('1');
                break;
            }

            case 2: {
                priorityChange(size, id);
                $jq('#priority-select-' + id).val('2');
                break;
            }
        }
    }*/


</script>
<script type="text/javascript">
    var $jq = jQuery.noConflict();

    var heart_m = "<?php echo $this->getSkinUrl('images/heart-m.png') ?>";
    var heart_m_disabled = "<?php echo $this->getSkinUrl('images/heart-m-disabled.png') ?>";


    var valor;
    function adicionaFav(id) {

        if (document.getElementById("heart-m-" + id).src == "<?php echo $this->getSkinUrl('images/heart-m-disabled.png');?>") {


            $jq("#heart-m-" + id).attr("src", heart_m);
            $jq('#priority-select-' + id).val('1');
        }
        else {


            $jq("#heart-m-" + id).attr("src", heart_m_disabled);
            $jq('#priority-select-' + id).val('0');
        }


    }


    function priorityChange(size, id) {


        if (size == 1) {

            $jq("#heart-m-" + id).attr("src", heart_m);
        } else {

            $jq("#heart-m-" + id).attr("src", heart_m_disabled);
        }
    }


</script>

var$jq=jQuery.noConflict();
var heart_m=“”;
var heart_m_disabled=“”;
var valor;
功能adicionaFav(id){
if(document.getElementById(“heart-m-”+id).src==“”){
$jq(“#heart-m-”+id).attr(“src”,heart-m);
$jq(“#优先级选择-”+id).val('1');
}
否则{
$jq(“#heart-m-”+id).attr(“src”,heart-m-u-disabled);
$jq(“#优先级选择-”+id).val('0');
}
}
功能优先级更改(大小、id){
如果(大小==1){
$jq(“#heart-m-”+id).attr(“src”,heart-m);
}否则{
$jq(“#heart-m-”+id).attr(“src”,heart-m-u-disabled);
}
}

希望我能帮助某人!!=)

你被卡在哪一部分?问题是什么?我可以改变心脏的颜色,但升级时无法保存状态。
<script type="text/javascript">
    var $jq = jQuery.noConflict();

    var heart_m = "<?php echo $this->getSkinUrl('images/heart-m.png') ?>";
    var heart_m_disabled = "<?php echo $this->getSkinUrl('images/heart-m-disabled.png') ?>";


    var valor;
    function adicionaFav(id) {

        if (document.getElementById("heart-m-" + id).src == "<?php echo $this->getSkinUrl('images/heart-m-disabled.png');?>") {


            $jq("#heart-m-" + id).attr("src", heart_m);
            $jq('#priority-select-' + id).val('1');
        }
        else {


            $jq("#heart-m-" + id).attr("src", heart_m_disabled);
            $jq('#priority-select-' + id).val('0');
        }


    }


    function priorityChange(size, id) {


        if (size == 1) {

            $jq("#heart-m-" + id).attr("src", heart_m);
        } else {

            $jq("#heart-m-" + id).attr("src", heart_m_disabled);
        }
    }


</script>