好的,现在我正在使用下面的代码工作正常。所选选项位于变量中:'val'。但现在我想改变div id。那么如何将'var_div'的值更改为'val'的值?
<form name="form1" method="POST">
<select name="select1" onchange="updatevariable(this)">
<option value="div2" >2</option>
<option value="div15" >15</option>
</select>
</form>
<script type="text/javascript">
function updatevariable(elm) {
val = elm.options[elm.selectedIndex].value;
window.alert(val);
}
</script>
<div id='var_div'>
</div>
答案 0 :(得分:3)
这个怎么样......
document.getElementById("var_div").setAttribute("id", val);
...与jQuery ...
$('#var_div').attr('id',val);
我希望这会有所帮助 赫里斯托斯
答案 1 :(得分:2)
document.getElementById("var_div").id = val;
修改
顺便说一句,你需要将元素的id存储在其他地方,这样你就可以知道下次想要更改它时要查找的id。如果不这样做,此代码只能使用一次。如果您想支持重复更改ID,您可能需要执行以下操作:
<script type="text/javascript">
var currentDivId = "var_div";
function updatevariable(elm) {
val = elm.options[elm.selectedIndex].value;
window.alert(val);
var divElement = document.getElementById(currentDivId);
divElement.id = val;
currentDivId = val;
}
</script>
答案 2 :(得分:2)
你可以做一些简单的事情
document.getElementById('var_div').setAttribute('id',val)
但您可能还想查看一个像jquery这样的框架。如果你要做很多这样的事情,那将会让你的生活变得更轻松!
答案 3 :(得分:1)
如果您需要,可以这样做:
<div id="test"></div>
<script type="text/javascript">
var elem = document.getElementById("test");
alert(elem.id);
elem.id = "test2";
alert(document.getElementById("test2").id);
</script>
使用Javascript选择元素后,更改元素的id属性。
答案 4 :(得分:0)
如果这个div是表格中唯一的那个div,那就像这样容易
<form name="form1" method="POST">
<select name="select1" onchange="updatevariable(this)">
<option value="div2" >2</option>
<option value="div15" >15</option>
</select>
</form>
<script type="text/javascript">
function updatevariable(elm) {
document.getElementByTagNames('DIV')[0].id= elm.options[elm.selectedIndex].value;
}
</script>
<div id='var_div'>
</div>
我动态地通过id动态获取div,因为id将通过更改select标签而更改,然后将id更改为选项的值
但是如果表单中还有其他div,那么我们需要像
一样设置一个属性到这个div <div id='var_div' changeId="true">
</div>
然后遍历div并将其上传并更改id
function updatevariable(elm) {
var divs = document.getElementByTagNames('DIV');
for(var i =0;i<divs.length;i++)
{
if(divs[i].getAttribute('changeId')!=null) {
if(divs[i].getAttribute('changeId')=="true"){
divs[i].id=elm.options[elm.selectedIndex].value;
}
}
}
}
那说的话
问候
如果对您有用,请将此答案标记为正确答案
:)