获取两个标签的id之后,怎么将这两个id拼在一起?
问题描述:
我在获取两个标签的id(aId,bId)之后,想将这两个标签拼在一起,然后打印出来
for(var i = 0;i<aLi.length;i++){
aLi[i].onclick = function(){
var aTxt = this.innerHTML;
window.aId = this.id;
document.getElementById('ss').innerHTML = aTxt;
}
}
for(var j = 0;j<bLi.length;j++){
bLi[j].onclick = function(){
var bTxt = this.innerHTML;
window.bId = this.id;
document.getElementById('cc').innerHTML = bTxt;
}
}
var addId = aId + bId;
var oBtn = document.getElementById('btn');
oBtn.onclick = function(){
alert(addId);
}
这么写可以么?
答
<p id="t1">第一题您选择的是<strong><u id="ss"></u></strong></p>
<ul id="choose1">
<li id="a1">哈哈</li>
<li id="a2">呵呵</li>
<li id="a3">嘿嘿</li>
<li id="a4">吼吼</li>
</ul>
<p id="t2">第二题您选择的是<strong><u id="cc"></u></strong></p>
<ul id="choose2">
<li id="b1">java</li>
<li id="b2">ios</li>
<li id="b3">Android</li>
<li id="b4">php</li>
<li id="b5">jquery</li>
</ul>
<input type="button" id="btn" value="答案"/>
<script type="text/javascript">
var addId, aId, bId;
window.onload = function () {
var aLi = document.getElementById('choose1').getElementsByTagName('li');
var bLi = document.getElementById('choose2').getElementsByTagName('li');
for (var i = 0; i < aLi.length; i++) {
aLi[i].onclick = function () {
var aTxt = this.innerHTML;
aId = this.id;
document.getElementById('ss').innerHTML = aTxt;
}
}
for (var j = 0; j < bLi.length; j++) {
bLi[j].onclick = function () {
var bTxt = this.innerHTML;
bId = this.id;
document.getElementById('cc').innerHTML = bTxt;
}
}
}
var oBtn = document.getElementById('btn');
oBtn.onclick = function () {
addId = (aId || '') + (bId || '');
alert(addId);
}
</script>
答
aId,bId是字符串没有,是可以直接相加,如果是对象你就要调用属性来相加,2个对象不能直接加
答
你想要的最后结果是 aIdbId 还是
的。如果是后者的话在获取到对象后使用 .tagName获取元素名称。
答
补充刚才的问题。。 aIdbId 还是 <div id="a"></div><div id="b"></div> \为了转移而写。。
答
你可以用jquery用$('#'+aid).html()+$('#'+bid).html(),这样获得两个标签,然后就去打印吧
答
var id1 = $("#id1")[0].id;
var id2 = $("#id2")[0].id;
var id = id1 + id2 ;
答
jquery的方法$(element).prop("id");获取了后 用 + 连接就好了