我是Javascript和HTML新手。 我正在开发一个有很多单选按钮的项目。
<input type="radio" name="name" value="Run $temp" data-href="test.pl" onclick="function()"/>Text
每当我点击单选按钮时,我想显示一个按钮,其值与单选按钮的值相同(在本例中为“Run $ temp”)。 我该怎么写function()。 感谢
已更新
<input type="radio" name="name" id="button1" value="Run $temp" data-href="test.pl" onclick="doStuff('id')"/>Text
JS
<script>
var prevButton;
function doStuff(id) {
if(prevButton){
prevButton.parentNode.removeChild(prevButton);
}
var radio= document.getElementById(id);
var button = document.createElement('button');
button.innerHTML = radio.value;
radio.parentNode.insertBefore(button, radio.nextSibling.nextSibling);
prevButton = button;
}
答案 0 :(得分:0)
我不知道我是否理解你想做,但试试这个:
<script type="text/javascript">
function setText() {
var textValue = document.getElementById("new_value");
textValue.innerHTML = "Text";
}
</script>
<input type="radio" name="name" value="Run $temp" data-href="test.pl" onclick="setText()"/><span id="new_value"></span>
答案 1 :(得分:0)
this会让你开始吗?
function createBtn() {
var radioBtn = document.getElementById("run-temp-btn"),
radioBtnText = radioBtn.value,
btn = document.createElement("button"),
t = document.createTextNode(radioBtnText),
row1 = document.getElementById("row-1");
btn.appendChild(t);
row1.appendChild(btn);
}
答案 2 :(得分:0)
尝试点击一下。
<强>已更新强>
您必须保留对前一个按钮的引用,以便在单击下一个单选按钮时将其删除。
传递要与此功能绑定的单选按钮的名称。
<input type="radio" id="thisId" value="Run $temp" data-href="test.pl" onclick="doStuff('thisId');"/>Text
<script>
var prevButton;
function doStuff(id) {
if(prevButton){
prevButton.parentNode.removeChild(prevButton);
}
var radio= document.getElementById(id);
var button = document.createElement('BUTTON');
button.innerHTML = radio.value;
radio.parentNode.insertBefore(button, radio.nextSibling.nextSibling);
prevButton = button;
}
</script>
修改强>
document.getElementById(id)返回一个元素而不是数组,因此不需要[0]来选择第一个元素。要么是你犯的错误,要么你在所有大写字母中输入了ID,document.getElementBy * Id *(id)。 Id的 d 较小。
这是fiddle。