修改我的收音机输入按钮的文字?

时间:2013-08-12 04:55:03

标签: javascript input innerhtml radio

您的平均单选按钮有一个名称和值,但旁边还有一些文字,在本例中为“更改此文字。”

如何在javascript中更改此内容?甚至提醒它? AFAIK,它不是.inner html。

HTML:

            <input type="radio" name="radioOption1" value="Array 1"> Change this text

的Javascript

    var confirmIExist = document.getElementsByName("radioOption1");
alert(confirmIExist.innerHTML);
    //alerts undefined

如果不是.innerHTML,它是什么?如果我使用getElementByName或getElementById获取输入对象,那之后的什么块表示Alert文本?

4 个答案:

答案 0 :(得分:3)

您可以使用alert(confirmIExist[0].nextSibling.textContent),但是将文本放在<label>中的单选按钮旁边然后获取内部html

会不会更好
<input type="radio" id="radioOption1" name="radioOption1" value="Array 1"><label for="radioOption1" id="r1option">Change this text</label>
...
var label = document.getElementById("r1option");
alert(label.innerHTML);

答案 1 :(得分:2)

您无法为输入元素设置内部html。而是用a包装你的文字并给它一个ID

<input type="radio" name="radioOption1" value="Array 1"> <label id="radioText">Change this text</label>

答案 2 :(得分:0)

input是一个自我关闭元素。它不能有innerHTML

nextSibling将返回单选按钮后面的节点。

document.getElementsByName('radioOption1')[0].nextSibling.nodeValue = 'Text changed';

jsFiddle Demo

答案 3 :(得分:0)

confirmIExist [0] = .nextSibling.textContent “ABC”