嗨即時嘗試創建一個編輯腳本在jQuery中,將p內容更改爲輸入字段,並讓人們編輯它們,然後恢復到內容。jquery切換元素進行編輯
我的代碼:
<div class="addressblock">
<div class="data">
<p name="bedrijfsnaam">company name</p>
<p name="tav">to whom</p>
<p name="adres">street and number</p>
<p name="postcode">1234AB</p>
<p name="woonplaats">city</p>
<p name="land2" >Land</p>
</div>
<a href="#_" class="editinv" id="00001" name="edit">Edit</a>
</div>
的Jquery =
$(document).ready(function() {
$(".editinv").click(function() {
var editid = $(this).attr("id");
var edit_or_text = $(this).attr("name");
if(edit_or_text == "edit"){
$(this).closest('div').find('p').each(function(){
var el_naam = $(this).attr("name");
var el_content = $(this).text();
$(this).replaceWith("<input type='text' name='"+el_naam+"' id='" + el_id + "' value='"+el_content+"' />");
});
$(".editinv").replaceWith("<a href='#_' class='editinv' name='done' id='"+editid+"'>Done</a>");
}
if(edit_or_text == "done"){
$(this).closest('div').find('input').each(function(){
var el_naam = $(this).attr("name");
var el_content = $(this).attr("value");
$(this).replaceWith("<p name='"+el_naam+"' id='" + el_id + "'>'"+el_content+"' </p>");
});
$(".editinv").replaceWith("<a href='#_' class='editinv' name='edit' id='"+editid+"'>Bewerken</a>");
}
});
});
當編輯單擊它完全改變了輸入字段和改變編輯按鈕以完成按鈕。點擊完成按鈕從來沒有註冊,雖然類是相同的。
任何人有任何想法?
在此先感謝!
編輯:我創建了這個問題的的jsfiddle http://jsfiddle.net/hBJ5a/
它很簡單,爲什麼不接受元素第二個點擊後已經恢復被改變?
更改您的提琴:HTTP://的jsfiddle。淨/ SAERE/2/ – Sorprop