いくつかのデータを持ついくつかの要素があります。そのための変化するフィールドを作成する必要があります。したがって、この要素のテキストを変更するには、textarea を使用します。すべてがうまく機能していますが、テキスト言語で条件を追加したい場合、何かが正しく機能していません...これは私のコードであり、そのためのいくつかのフィドル( http://jsfiddle.net/qzzKA/ )です。助けてくれてありがとう...
<div class="textchange_box">
<span class="desc">data<br>data
</span>
<textarea name="desc" class="textfield"></textarea>
<span class="change">change</span>
<span class="save">save</span>
</div>
そしてjquery:
$(".change").live('click', function () {
$(this).prev('.textfield').css('display','block');
$(this).prevAll('.desc').css('display','none');
$(this).next('.save').css('display','block');
$(this).css('display','none');
});
$(".save").live('click', function () {
var default_value = $(this).prev('.desc').text().replace(/\r\n|\r|\n/g,"<br/>");
var actual_value = $(this).prev('.textfield').text().replace(/\r\n|\r|\n/g,"<br />");
$(this).prevAll('.textfield').css('display','none');
$(this).prev('.change').css('display','block');
$(this).css('display','none');
if (actual_value.length < 0) {
$(this).prev('.desc').replaceWith('<span class="desc">' + default_value +'</span>');
}
else if (actual_value.length > 0) {
$(this).prev('.desc').replaceWith('<span class="desc">' + actual_value +'</span>');
}
});