获取<a>标签
Get id element of an <a> tag
我正在解析XML并将其放入一个简单的表中,如下所示:
function showData(message) {
var str = "<table border=1 class='editable'>";
for (var i = 0; i < message.length; i++) {
str += "<tr>" + "<td>" + message[i].id + "</td>" +
"<td>" + message[i].name + "</td>" +
"<td>" + message[i].url + "</td>" +
"<td>" + message[i].desc + "</td>" +
"<td>" + "<a href='javascript:deleteRequest();' id=message[i].id>delete</a>" + "</td>" + "</tr>";
}
str += "</table>";
return str;
}
我在表的最后一列中有一个标记,我正在尝试设置标记的id,或者能够从deleteRequest方法中获取它,以便删除表中的该条目。
1) 我不确定我是否为标签正确设置了id。
2) 我不知道如何在deleteRequest方法中获得所选标记的id,就像iOS中的发送方一样,或者将id作为参数传递给deleteRequest()。我不确定哪种方法更好。我试着做一个简单的警报(arguments[0]),看看在这种情况下传递了什么,但我没有定义。所以我有点不知所措,因为我只是在学习Javascript。谢谢
对包含链接的行尝试这样的操作:
"<td>" + "<a href='javascript:deleteRequest(this);' id='" + message[i].id + "'>delete</a>" + "</td>" + "</tr>";
// OR, without the extra + operations:
"<td><a href='javascript:deleteRequest(this);' id='" + message[i].id + "'>delete</a></td></tr>";
您没有将message[i].id
中的值连接到您正在生成的字符串中,而是包含了字符串"message[i].id"。(请注意,这一行最终看起来与之前的四行代码相似。)
如果您将this
作为参数传递给您的函数,就像上面显示的deleteRequest(this)
一样,您可以执行以下操作:
function deleteRequest(el) {
// el is the <a> that was clicked
alert(el.id); // displays the id from the row that was clicked
}
(显然,alert(el.id)
只是如何访问id
属性的一个示例,此时您可以对它执行任何操作。)
关于术语的注意事项:您的问题标题是"获取标签的id元素"-id
是属性,链接是锚元素(或"a"元件),在html标记中,锚元素是用<a>
标签定义的。(类似地,"href"是属性。)
编辑:我刚刚注意到您的JS嵌入在href
属性中。我不确定这是否适用于this
关键字,但无论如何,更好的方法是:
<a href="#" onclick="deleteRequest(this); return false;">
或者,在您的代码中:
"<td><a href='#' onclick='javascript:deleteRequest(this);return false;' id='" + message[i].id + "'>delete</a></td></tr>";
相关文章:
- 在<页眉>标签
- Ckeditor-plugin:插入虚假元素add不情愿<p>标签前后
- </脚本>标签放错地方了
- Jquery在点击<a>标签
- Ionic V1.3-标签-带条件的徽章样式<离子选项卡>
- <选择>标签不起作用
- 如何在<嵌入>标签在Plone 4.1中
- 在<script src=“"></脚本>标签
- 使用几个<脚本>标签不会't工作-只调用一个脚本
- 如何在更新面板内部调用/触发javascript函数<触发器>标签
- react-让一个元素返回两个相邻的<tr>标签
- <h1>标签在离子含量元素中不可见
- VS代码:在<脚本>标签
- 在</表单>标签
- Meteor.js:<脚本>标签不't在<身体>
- 替换<标签>,包含的表单控件除外
- 使用jQuery加载基于<标签>目录
- 可以't在<标签>标签
- 更改只有<标签>标记在<李>
- 点击<标签>在Mobile Safari中