如何根据点击使用同名标签显示innerhtml?

时间:2016-05-09 09:25:25

标签: javascript html onclick innerhtml

HTML

<div name="hhh" class="col-sm-7  new" align="left" >

</div>

的javascript

yes.onclick =function()
{
var all = document.getElementsByName("hhh");
    for(var i = 0, max = all.length; i < max; i++) 
        {
            all[i].innerHTML="You have clicked Yes.";

        }
 }


no.onclick =function()
{
var all = document.getElementsByName("hhh");
    for(var i = 0, max = all.length; i < max; i++) 
        {
            all[i].innerHTML="You have clicked No.";

        }
 }

这里在html中有两个按钮是yes和no。如果用户单击yes,yes.onclick()将执行,如果用户单击no,no.onclick()将执行。 在同一个部门hhh,我必须根据点击显示消息。但是,如果我写上面的代码,甚至在点击之前就会显示该消息。 它正在考虑只有一个名字。如何编辑代码,以便根据点击显示消息?现在它正在写现有的消息。我不想过度写。我也想显示上一条消息。

4 个答案:

答案 0 :(得分:0)

<div name="hhhYest" class="col-sm-7" onClick="clickEvent('yes')"  new" align="left" >
</div>
 <div name="hhhNo" class="col-sm-7" onClick="clickEvent('no')"  new" align="left" ></div>

function clickEvent(yesOrNo)
{
//your logic here yesOrNo

 }

答案 1 :(得分:0)

你应该使用getElementsByTagName()或更好你应该使用getElementById,如果你只有一个div。

在哪里为js var指定名称“是”和“否”?也许问题是。 如果没有理由通过代码分配函数,你也可以只定义一个函数

function myError(e){
    var all = document.getElementsByTagName("hhh");
        for(var i = 0, max = all.length; i < max; i++) 
        {
            all[i].innerHTML="You have clicked " + e.value;

        }
}

然后将功能分配给你的按钮

<input type="button" value="yes/no" onClick="myError(this)">

答案 2 :(得分:0)

有很多方法可以在javascript中处理点击事件。您似乎正在尝试设计按钮UI。您不必解析元素数组,选择更好的选择器。此外,HTML中 div 元素没有名称属性,所有数组为空。

一种方法如下所示。

https://jsfiddle.net/699ddkvk/

<div id="hi" style="background-color: red; width:50px; height:50px;" align="left" ></div>
<br>
<div id="ho" style="background-color: blue; width:50px; height:50px;" align="left" ></div>

red = document.getElementById("hi");
blue = document.getElementById("ho");

red.onclick=function(){
   red.innerHTML="YES";
};

blue.onclick=function(){
    blue.innerHTML="YES";
};

答案 3 :(得分:0)

all[i].innerHTML = ...
all[i].innerHTML += "\n" + ...

不要设置

white-space: pre-line;

在css。