将文本更改为输入并选择所有文本

时间:2013-11-17 04:22:05

标签: jquery

我有以下代码,可以将DIV的链接文本更改为输入。

var input = "<input type='text' class='class_type' value='" + value + "'/>";
$(this).parent.find(".name").html(input);

我知道你可以使用.select(),但是将它添加到第二行的末尾不起作用。

我尝试使用$('。class_type')。select()有效。但是,如果页面具有同一类的多个输入字段,则会选择页面上的最后一个输入字段,而不是刚刚更改为输入字段的字段。

非常感谢另一种解决方案。

2 个答案:

答案 0 :(得分:0)

尝试

var input = "<input type='text' class='class_type' value='" + value + "'/>";
$(input).appendTo($(this).parent().find(".name").empty()).select();

var input = "<input type='text' class='class_type' value='" + value + "'/>";
var $parent = $(this).parent();
$parent.find(".name").html(input);
$parent.find(".class_type").select()

答案 1 :(得分:0)

问题是你还在处理父.name元素。您在该父元素中添加了<input>元素,但随后在.select()元素上调用.name而不是其中的输入字段。

您需要向下导航到新的<input>元素并在其上调用select() 像这样:

$(this).parent.find(".name").html(input)
    .find('input')  // find the input field we just added
    .select();      // ...and call select on it