从选项中拆分文本并替换

时间:2019-06-17 11:42:21

标签: jquery arrays split option

我正在Joomla中做某事,并且我有一个自定义字段来选择床垫的尺寸。

我将值设置为220x200 | image.png,以便可以选择图像网址并将其放置在站点中的某个位置,例如所选选项的示例。

所以我将此文本拆分为数组,并且可以正常工作。但是,如果我有更多具有不同值的选项,则字符串“ array”具有多个值,例如array [0]为“ 220x200”和“ 200x180”。

这是我的代码:

jQuery('#customProductData9042444customsforall_option').find('option').each(function() {
    var naziv = jQuery(this).text();
    var array = naziv.split("|");
    jQuery(this).text(array[0]);

    jQuery('#customProductData9042444customsforall_option').on('change', function() {
        jQuery('.skica img').attr("src","/namestaj/images/skice/"+array[1]);
        console.log(array);
    });

});

演示链接:http://proba.wh.rs/namestaj/prodavnica/horizontali-singl-zidni-kreveti/h-90x200-otvoren-model-detail.html

1 个答案:

答案 0 :(得分:1)

您不需要那么多代码,您要做的是:

a)更改选择框后,将显示所选的选项文本

b)通过|分割它并获得最后一个值

c)在图片网址中使用此值。

执行以下操作:

jQuery('#customProductData9042444customsforall_option').on('change', function() {
    var imageName = jQuery(this).find('option:selected').text().split("|")[1];
    jQuery('.skica img').attr("src","/namestaj/images/skice/"+imageName);
});