0

我无法替换包含捕获的 html 的变量中的某些值。

我会让代码解释我想要完成的事情。

免得说:

last_id = 1;
data.id = 2;

编码:

/*prepare new edit,delete button*/
var controls = $('table#option_groups tr:last td:last').html();

输出 var 控件将返回:

<a href="stuff/edit/1">Edit</a>
<a href="stuff/delete/1">Delete</a>

试图替换\更新编辑按钮:

//replacing edit button
controls.replace('/edit/'+last_id, '/edit/'+data.id);

替换后输出控件:

<a href="stuff/edit/1">Edit</a>
<a href="stuff/delete/1">Delete</a>

所需的输出:

<a href="stuff/edit/2">Edit</a>
<a href="stuff/delete/1">Delete</a>

所以问题是:如何替换包含捕获的 html 的变量中出现的字符串。

谢谢!

4

2 回答 2

3

看来您没有将替换的字符串重新分配给controls变量,试试这个:

controls = controls.replace('/edit/'+last_id, '/edit/'+data.id);
于 2012-06-12T21:06:02.033 回答
2

您可以在一行代码中做到这一点:

var controls = $('table#option_groups tr:last td:last').html().replace("/edit/"+last_id, "/edit/"+data.id);

输出:

<a href="stuff/edit/2">Edit</a>
<a href="stuff/delete/1">Delete</a>
于 2012-06-12T21:01:27.087 回答