如何使用javascript更改img标签的src属性?

<img src="../template/edit.png" name="edit-save" alt="Edit" />

首先,我有一个默认的src是“../template/edit.png”,我想用“../template/save.png”onclick更改它。

更新: 这是我的HTML onclick:

<a href="#" onclick="edit()"><img src="../template/edit.png" id="edit-save" alt="Edit" /></a>

和我的JS

function edit()
{   
    var inputs = document.myform;
    for(var i = 0; i < inputs.length; i++) {
        inputs[i].disabled = false;
    }
}

我已经尝试在edit()中插入这个,它可以工作,但需要单击图像两次

var edit_save = document.getElementById("edit-save");
    edit_save.onclick = function(){
       this.src = "../template/save.png";
    }

当前回答

在本例中,由于您想要更改元素的第一个值的src,因此不需要构建函数。你可以在元素中修改:

<a href='#' onclick='this.firstChild.src="../template/save.png"')'>
  <img src="../template/edit.png" id="edit-save"/>
</a>

有几种方法可以做到这一点。你也可以创建一个函数来自动化这个过程:

function changeSrc(p, t) { /* where p: Parent, t: ToSource */
  p.firstChild.src = t
}

然后你可以:

<a href='#' onclick='changeSrc(this, "../template/save.png");'>
  <img src="../template/edit.png" id="edit-save"/>
</a>

其他回答

现在好了

function edit()
{   
    var inputs = document.myform;
    for(var i = 0; i < inputs.length; i++) {
        inputs[i].disabled = false;
    }

    var edit_save = document.getElementById("edit-save");

       edit_save.src = "../template/save.png";                              
}

给你的img标签一个id,然后你就可以

document.getElementById("imageid").src="../template/save.png";

给你的图像一个id。然后你可以在你的javascript中这样做。

document.getElementById("blaah").src="blaah";

您可以使用此语法更改任何元素的任何属性的值。

如果你使用JQuery库,请使用以下说明:

$("#imageID").attr('src', 'srcImage.jpg');

在本例中,由于您想要更改元素的第一个值的src,因此不需要构建函数。你可以在元素中修改:

<a href='#' onclick='this.firstChild.src="../template/save.png"')'>
  <img src="../template/edit.png" id="edit-save"/>
</a>

有几种方法可以做到这一点。你也可以创建一个函数来自动化这个过程:

function changeSrc(p, t) { /* where p: Parent, t: ToSource */
  p.firstChild.src = t
}

然后你可以:

<a href='#' onclick='changeSrc(this, "../template/save.png");'>
  <img src="../template/edit.png" id="edit-save"/>
</a>