JQuery:如何更改img的src属性的"image.png"部分

Aer*_*dir 0 jquery

我试图在检测到特定信用卡架构时简单地更改图像.

所以,我的代码从这开始:

         <div class="form-group cc-number-group">
            <label for="cc-number" class="control-label">Card number <small class="text-muted">[<span class="cc-brand"></span>]</small></label>
            <div class="input-group">
                <input style="border-right: 0;" id="cc-number" type="tel" size="20" data-stripe="number"  class="form-control cc-number card-generic form-control input-sm" autocomplete="cc-number" />
                <div class="input-group-addon">
                    <img height="16px" class="credit-card-icon" src="/bundles/bundlename/images/credit.png" />
                </div>
            </div>
        </div>
Run Code Online (Sandbox Code Playgroud)

经过大量的尝试和失败,我写了这段代码:

    switchCreditCardIcon = function(vendor) {
        var path = $('.credit-card-icon').attr('src').split('/');
        path.pop(-1);
        path.push(vendor + '.png');
        newPath = document.domain + path.join('/');
        $('.credit-card-icon').attr('src', path);
    };
Run Code Online (Sandbox Code Playgroud)

因此,例如,如果我输入Visa信用卡,则新的vendor是"签证".

现在,如果我执行console.log(newPath)控制台日志,127.0.0.1/bundles/bundlename/images/visa.pngsrc属性设置为,bundles,bundlename,images,visa.png如此,我收到一个错误:

http://127.0.0.1:8000/path/to/page/,bundles,bundlename,images,visa.png 404(未找到)

但是,除了错误之外,也许有一种更简单的方法可以做到这一点......任何人都可以给我一些建议吗?

Tyl*_*per 5

 newPath = document.domain + path.join('/');
 $('.credit-card-icon').attr('src', path);
Run Code Online (Sandbox Code Playgroud)

你设置newPath为加入的路径/,甚至包含在你的路径中console.log(newPath),但是你将src设置为path.我相信它应该是:

$('.credit-card-icon').attr('src', newPath);
Run Code Online (Sandbox Code Playgroud)