我想用输入框替换每个链接,输入框的值是链接的URL。我想使用jQuery replaceAll()函数。标准格式是
$(content).replaceAll(target);
我的问题是:你如何引用目标对象?换句话说,在下面的代码中,我应该用 TheCurrentLink 代替什么?
$('<input>').attr('value', TheCurrentLink.href}).replaceAll($("a"));
答案 0 :(得分:3)
你需要做更多这样的事情:
$('a').each(function(){
var $a = $(this);
$a.replaceWith($('<input/>').attr('value', $a.attr('href')));
});
答案 1 :(得分:2)
尝试:
$("a").replaceWith(function() {
return "<input type='text' value='"+$(this).attr("href")+"' />";
});
测试here。
答案 2 :(得分:1)
我改用replaceWith()
:
$('a').each(function(){
$(this).replaceWith('<input type="text" value="' + $(this).attr('href') + '" />');
});
工作示例:http://jsfiddle.net/AlienWebguy/6KP4H/
工作示例2,添加了将输入转换回链接的逻辑:http://jsfiddle.net/AlienWebguy/6KP4H/1/