Javascript Id=”号;root";。这就是价值

Javascript Id=”号;root";。这就是价值,javascript,html,onchange,getelementbyid,Javascript,Html,Onchange,Getelementbyid,我粗略地寻找了一个类似的问题,但没有找到解决方案 我的问题是,我需要通过选择选项菜单aimg和ahref进行更改。如果我只需要改变其中一个,那不是问题。。。但是a href和src有不同的根,我不知道如何才能给它们相同但附加不同根的值。。。 也许更容易显示代码来解决我的问题 <select onchange="document.getElementsById('stammimg').src = 'img/stamm/thumb/'.this.value;document.getElemen

我粗略地寻找了一个类似的问题,但没有找到解决方案

我的问题是,我需要通过选择选项菜单a
img
和a
href
进行更改。如果我只需要改变其中一个,那不是问题。。。但是
a href
和src有不同的根,我不知道如何才能给它们相同但附加不同根的值。。。 也许更容易显示代码来解决我的问题

<select onchange="document.getElementsById('stammimg').src = 'img/stamm/thumb/'.this.value;document.getElementsById('stammref').href = 'img/stamm/'.this.value;">

<option value="img1.png">Stammbaum 1</option>
<option value="img2.png">Stammbaum 2</option>
</select>

<a id="stammref" href=""><img id="stammimg" src="" /> </a> `

斯坦姆鲍姆1
斯坦姆鲍姆2
`
嗯。。。这就是我工作的目的。。。 只要我删除一个
getElement
并删除
this.value
之前的根,这个东西就可以工作,但像这样它什么都不做。这里有谁能帮我得到我需要的东西


提前感谢

您需要使用
+
连接JavaScript中的字符串,而不是PHP中的

<select onchange="document.getElementsById('stammimg').src = 'img/stamm/thumb/' + this.value;document.getElementsById('stammref').href = 'img/stamm/' + this.value;">

最好将此代码拆分为单独的函数:

将此添加到您的页面:

<script>
    function selectChanged() {
        document.getElementsById('stammimg').src = 'img/stamm/thumb/' + this.value;
        document.getElementsById('stammref').href = 'img/stamm/' + this.value;
    }
</script>

函数selectChanged(){
document.getElementsById('stammimg').src='img/stamm/thumb/'+this.value;
document.getElementsById('stammref').href='img/stamm/'+this.value;
}
并将选择标记更新为:

<select onchange="selectChanged">

  • getElementsById
    ->
    getElementById
  • 您需要使用
    +
    而不是
  • 另外,不要使用内联事件处理程序。创建单独的函数更容易

    <script>
    var OnChange = function(obj) {  
        document.getElementById('stammimg').src ='img/stamm/thumb/'+obj.value;
        document.getElementById('stammref').href = 'img/stamm/'+obj.value;
    };
    </script>
    
    <select onchange="OnChange(this)">
        <option value="img1.png">Stammbaum 1</option>
        <option value="img2.png">Stammbaum 2</option>
    </select>
    
    <a id="stammref" href=""><img id="stammimg" src="" /> </a>
    
    
    var OnChange=函数(obj){
    document.getElementById('stammimg').src='img/stamm/thumb/'+obj.value;
    document.getElementById('stammref')。href='img/stamm/'+obj.value;
    };
    斯坦姆鲍姆1
    斯坦姆鲍姆2
    

  • “img/stamm/thumb/”。此.value这是什么?也许我在这里误用了一些东西,因为我认为它可能像在php中一样工作。。。我只是想说,'img/stamm/thumb/'是根,其中img是pics的值名,sameJavaScript的字符串连接运算符是
    +
    ,而不是
    。非常感谢。我只是找不到正确的问题来找到运算符来连接我的值和根。。。我只是觉得它和php中的一样(我非常了解基础知识)。你能解释一下你为什么用
    +obj.value
    而不是
    这个.value