Javascript “我可以设置”吗;id";将按钮转换为变量?
我想将一个按钮的id设置为一个变量,这样我就可以轻松地访问不断变化的按钮数量:Javascript “我可以设置”吗;id";将按钮转换为变量?,javascript,jquery,html,Javascript,Jquery,Html,我想将一个按钮的id设置为一个变量,这样我就可以轻松地访问不断变化的按钮数量: <script>var test = 1; </script> <button id=test> click me </button> var测试=1; 点击我 但这是行不通的。 我这样做的动机是: 我从一个xml文件中读取并使用表单显示其中的一部分。然后我必须改变它们的值。而且我从xml中读取的项目数量是不固定的。所以,如果我想控制它们,我需要给每个项目一个数字
<script>var test = 1; </script>
<button id=test> click me </button>
var测试=1;
点击我
但这是行不通的。
我这样做的动机是:
我从一个xml文件中读取并使用表单显示其中的一部分。然后我必须改变它们的值。而且我从xml中读取的项目数量是不固定的。所以,如果我想控制它们,我需要给每个项目一个数字
var test=1;
var ele = document.getElementById('test');
ele.id="button_" + test;
ele.value="button " + test;
我只是想说清楚,当你说
<button id=test/>
或者,就这一点而言,更符合标准
<button id="test"/>
单词test
只是一个文本标识符。它不会被解释为javascript
(据我所知)您可以将javascript直接放入HTML属性并对其进行解释的唯一位置是事件处理程序(如
onclick
)或a
标记的href
中,在前缀javascript:
之后,您在代码中所做的是分配id
值“test”到元素
听起来您已经在直接处理DOM元素了,所以您可以将值分配给它们的id
属性。例如:
var list, li, index;
// Find a list that already exists on the page
list = document.getElementById('myList');
// Add four items to it
for (index = 0; index < 4; ++index) {
li = document.createElement('li');
li.id = "listItem" + index; // listItem0, listItem1, ...
li.innerHTML = "I'm list item #" + index;
list.appendChild(li);
}
var列表、li、索引;
//查找页面上已存在的列表
list=document.getElementById('myList');
//添加四个项目
对于(索引=0;索引<4;++索引){
li=document.createElement('li');
li.id=“listItem”+索引;//listItem0、listItem1。。。
li.innerHTML=“我是列表项#”+索引;
表1.儿童(李);
}
我不认为您可以直接将dom对象id设置为javascript变量,但您可以使用javascript或jQuery更改id。我不完全清楚您要做什么。但是我想你说的是,你想根据按钮的数量来更改id,这样就可以使用jquery foreach了
$('button').each(function(key,value){
$(this).attr("id","button_"+key)
});
var“button”将包含id为“test”的DOM对象。你可能想做一些更“动态”的事情,比如:
var myArray = [];
var oButton = document.getElementsByTagName("button");
var i = 0;
for(i=0;i<oButton.length;i++) {
if (oButton[i].className == 'likedButton') {
myArray.push(oButton[i]);
}
}
var myArray=[];
var oButton=document.getElementsByTagName(“按钮”);
var i=0;
对于(i=0;i您不能在按钮ID内立即更改它。必须在按钮后更改它
var button3=“button3”+i
var button4=“button4”+i
“接受”+
“取消”
+"");
var ele=document.getElementById('button3');
ele.id=“button3”+i;
var ele=document.getElementById('button4');
ele.id=“按钮4”+i;
i++;
document.getElementById(button3).disabled=button1;
document.getElementById(button4).disabled=button2;
“我认为您不能直接将dom对象id设置为javascript变量…”是的,您可以。;-)@T.J.Crowder那么你可以这样做?我想你们在回答问题时说的是同一件事:document.writeln(“”)代码>但是你不需要,你可以稍后再做,修改标记。Lol ohh好的,我看到了Lol ic,但这不是将js变量直接放在HTML中的同一个广告,但我明白了,值得注意的是,id
属性不能,在HTML4 doctype下,以数字字符开头,并且是有效的HTML 4文档。请注意,前缀javascript:
仅用于href
属性;不是在事件处理程序中!您的代码不完整,第三行中似乎缺少一些内容
var myArray = [];
var oButton = document.getElementsByTagName("button");
var i = 0;
for(i=0;i<oButton.length;i++) {
if (oButton[i].className == 'likedButton') {
myArray.push(oButton[i]);
}
}