【问题标题】:javascript onclick get image name without pathjavascript onclick获取没有路径的图像名称
【发布时间】:2015-05-24 19:00:51
【问题描述】:

我需要从没有路径的 SRC 属性中复制图像的名称(名称 + 扩展名)。 HTML:

 <input type="text" id="result" /><br /><br />

 <img src="../some_folder/some_folder/photo_name.jpg" onclick="getName()" id="img1" />

JS:

 function getName() {
    document.getElementById("result").value = document.getElementById("img1").src;
 }

这段代码克隆了图像的完整路径。路径不是静态的,所以我不能只剪切“SRC”的其余部分。。 提前致谢

【问题讨论】:

标签: javascript image


【解决方案1】:

你应该试试这个代码:

var filename = fullPath.replace(/^.*[\\\/]/, '');

你的 JS 函数是:

function getName() {
     var fullPath = document.getElementById("img1").src;
     var filename = fullPath.replace(/^.*[\\\/]/, '');
     // or, try this, 
     // var filename = fullPath.split("/").pop();

    document.getElementById("result").value = filename;
 }

【讨论】:

  • 请再问一个问题:我是 javascript 新手。如果我不能为 IMG 定义 ID,我该如何做这样的事情: var fullPath = this.src;我需要它,因为我有几张照片
  • 试试 jQuery,它将简化 DOM 操作,让您无需 ID/CLASS 即可轻松访问元素。
【解决方案2】:
document.getElementById("img1").src.split("/").pop().split(".")[0]

【讨论】:

  • OP 确实想要扩展,所以你不需要 .split(".")[0] 位。
【解决方案3】:
function getName() {

    var fullPath = document.getElementById("img1").src;
    var index = fullPath.lastIndexOf("/");
    var filename = fullPath;
    if(index !== -1) {     
        filename = fullPath.substring(index+1,fullPath.length);
    }
    document.getElementById("result").value = filename;
}

【讨论】:

    猜你喜欢
    • 2021-01-27
    • 1970-01-01
    • 2021-03-21
    • 1970-01-01
    • 2012-10-29
    • 1970-01-01
    • 1970-01-01
    • 2020-04-02
    • 1970-01-01
    相关资源
    最近更新 更多