0
我有一个HTML5文档类型的网页,我试图用我的表中的<tr>
元数据属性,像这样:HTML5数据 - *属性未按预期
while($res = mysql_fetch_assoc($U)){
if($c == "table-row-dark"){
$c = "table-row-light";
}else{
$c = "table-row-dark";
}
echo "<tr data-id='".$res['rid']."' class='".$c."'>"
."<td>".$res['fname']." ".$res['lname']."</td>"
."<td>".$res['company']."</td>"
."<td>".$res['rcity'].", ".$res['rstate']."</td>"
."<td>".$res['rphone']."</td>"
."</tr>";
}
以下是我的Javascript为每行添加一个onclick监听器,然后提醒data-id
属性的值。
function addEvt(elem,eventType,handler){
if (elem.addEventListener){
elem.addEventListener (eventType,handler,false);
}
else if (elem.attachEvent){
elem.attachEvent ('on'+eventType,handler);
}
}
if(getElm('kickbacktbl')){
var kbRows = getElm('kickbacktbl').getElementsByTagName('tr');
var kbrcount = kbRows.length;
while(kbrcount--){
if(kbRows[kbrcount]){
var row = kbRows[kbrcount];
addEvt(row,"click",function(e){
cancelDefaultAction(e ? e:window.event);
var did = row.getAttribute('data-id');
var url = "kickback.php?id="+did;
window.alert(url);
//openShit(url);
return false;
});
}
}
}
的问题是,当url
被提醒,它示出了属性作为null
的值。我究竟做错了什么?如何在保持跨浏览器兼容性的同时修复它?
当您检查HTML时,您在data-id属性中看到了什么? – Jessica
另外,如果你打算使用双引号为你的PHP字符串和html单曲,至少使用变量插值! 'echo'
@Jessica''tr data-id ='51105'class =' table-row-light kick-back-row'>' –
回答
尝试改变
row.getAttribute('data-id');
到this.getAttribute('data-id');
来源
2014-05-02 19:41:28 NoGray
你得到的标记名的元素,然后您尝试使用jQuery的功能他们。
是要走的路。
来源
2014-05-02 19:47:48
没有一个是jQuery的:/ –
相关问题