С учетом поля ввода, абзац с id="text1"
и кнопкой.
<input type="text" />
<p id="text1">Lorizzle ipsizzle dolizzle sit amizzle, consectetuer adipiscing yo mamma.</p>
<button>Copy</button>
Этот простой jQuery скопирует текст из абзаца, скроет его и покажет ввод с текстом из абзаца.
$("button").click(function() {
$("input").val(
$("#text1").hide().text()
).show();
});
Вот пример .
Ради интереса, я написал небольшой скрипт, который включает функциональность <editable>
для абзацев. Просто добавьте класс .editable
к любому абзацу, а jQuery позаботится обо всем остальном. Я не расширил его, чтобы разрешить многократное редактирование, и я почти начал писать вызовы AJAX, которые сохраняются в базе данных, потому что мне скучно. Но , так как светит солнце, я подумал, что лучше пойти на пляж. Вот мой код и пример.
$(".editable").each(function(i) {
var $this = $(this);
$this.attr("id", "orig-" + i);
var $edit = $("<button />")
.text("edit")
.attr("id", "update-" + i)
.click(function() {
var $input = $('<input type="text" />')
.attr("id", "edit" + i)
.val($this.text());
var $save = $('<button>Save</button>')
.click(function() {
var $new = $("<p />").text($input.val());
$input.replaceWith($new);
$(this).hide();
});
$(this).replaceWith($save);
$this.replaceWith($input);
});
$(this).after($edit)
});
ОБРАЗЕЦ
Вам действительно не нужны все идентификаторы, но если вы собираетесь выполнять POST с новыми значениями, вы можете легко обратиться к элементам.