我已经部分成功地搜索了我的问题的答案但不幸的是,我发现的答案只会改变一个字段而不是所有字段。
我的网站上有一张表格如下:
<table>
<tr>
<td>1</td>
<td id="demand">DL-001</td>
<td>Description 1</td>
</tr>
<tr>
<td>2</td>
<td id="demand">DL-002</td>
<td>Description 2</td>
</tr>
<tr>
<td>3</td>
<td id="demand">DL-003</td>
<td>Description 3</td>
</tr>
</table>
这是由PHP脚本生成的,从MySQL数据库查询详细信息。
我想要做的是使用jQuery替换以下各项:
<td id="demand">DL-001</td>
与
<td id="demand"><a href="order.php?d=DL-001">DL-001</a></td>
非常感谢任何帮助!
编辑:从OP的评论中添加了jQuery:
$(".demand").text('text');
用class&#34; demand&#34;替换所有tds。内容到&#39;文字&#39;。
但是当我使用以下内容时,它不起作用:
$(".demand").text('<a href=\'order.php?d=' + data[2] + '\'>' + data[2] + '</a>');
答案 0 :(得分:2)
将您的ID更改为类 - DOM中的ID必须是唯一的,并且会导致大多数javascript出现问题。
下面是一个工作片段,ID已更改,并提供了可用于完成此操作的示例jQuery。
*x = 7; // assign 7 in the address that x is pointing to
printf("%d\n", y);// will print 7
int z = 10;
x = &z; // now x is pointing at z and no longer pointing at y
printf("%d\n", *x);// will print 10
&#13;
// no-conflict safe document ready
jQuery(function($) {
// loop over all td's with the class of demand
$('td.demand').each(function() {
// load the DL-XXX into a variable (since it's used more than once)
var dl = $(this).text();
// change the td html to the link, referencing the DL-XXX number
$(this).html('<a href="order.php?dl=' + dl + '">' + dl + '</a>');
});
});
&#13;
答案 1 :(得分:0)
要获得预期结果,请使用以下使用jquery append
的选项$(".demand").each(function(){
var val = $(this).text()
$(this).html('<a href="order.php?d='+val+'">'+val+'</a>')
})
答案 2 :(得分:0)
试试这个:
(function($) {
var demands = $(".demand");
demands.each(function() {
// Make sure to strip-off redundant calls to $(this)
// Calling $(this) once suffices
var el = $(this),
txt = el.text();
el.html($("<a>", {href: 'order.php?d='+txt, text: txt}));
});
})(jQuery);
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>JS Bin</title>
<script src="https://code.jquery.com/jquery-3.1.0.js"></script>
</head>
<body>
<table>
<tr>
<td>1</td>
<td class="demand">DL-001</td>
<td>Description 1</td>
</tr>
<tr>
<td>2</td>
<td class="demand">DL-002</td>
<td>Description 2</td>
</tr>
<tr>
<td>3</td>
<td class="demand">DL-003</td>
<td>Description 3</td>
</tr>
</table>
</body>
</html>