Có vấn đề: Tôi cần tạo mã html từ chứa một div đã cho. Sau đó, tôi phải đặt mã html thô này vào một vùng văn bản. Khi tôi sử dụng hàm $ (textarea) .val () như thế này:
$ (textarea) .val ("một số html như <input type = 'text' value = '' style =" background: url ('http://www.w.com/bg.gif') repeat-x centre; "/> bla bla");
hoặc là
$ ('# idTxtArGenHtml'). val ($ ('idDivMain'). html ());
Tôi gặp vấn đề với một số ký tự đặc biệt (& '") khi chúng ở giữa dấu ngoặc kép. Nhưng khi tôi sử dụng hàm: $ (textarea) .html () thì văn bản vẫn ổn.
Có một mẫu ví dụ:
<FORM id="idFormContact" name="nFormContact" action="send.php" method="post" >
<FIELDSET id="idFieldContact" class="CMainFieldset">
<LEGEND>Test your newsletter» </LEGEND>
<p>Send to à : <input id='idInpMailList' type='text' value='youremail@gmail.com' /></p>
<FIELDSET class="CChildFieldset">
<LEGEND>Subject</LEGEND>
<LABEL for="idNomClient" class="CInfoLabel">Enter the subject: * </LABEL><BR/>
<INPUT value="" name="nSubject" type="text" id="idSubject" class="CFormInput" alt="Enter the Subject" ><BR/>
</FIELDSET>
<FIELDSET class="CChildFieldset">
<INPUT id="idBtnGen" type="button" value="Generate" onclick="onGenHtml();"/>
<INPUT id="idBtnSend" type="button" value="Send" onclick="onSend();"/><BR/><BR/>
<LEGEND>Message</LEGEND>
<LABEL for="idTxtArGenHtml" class="CInfoLabel">Html code : * </LABEL><BR/>
<span><TEXTAREA name="nTxtArGenHtml" id="idTxtArGenHtml" width='100%' cols="69" rows="300" alt="enter your message" ></TEXTAREA></span>
</FIELDSET>
</FIELDSET>
</FORM>
Và mã javascript / jquery không hoạt động để điền vào textarea là:
function onGenHtml(){
$('#idTxtArGenHtml').html( $("#idDivMain").html() );
}
Cuối cùng là giải pháp:
function onGenHtml(){
$('#idTxtArGenHtml').html( $("#idDivMain").html() );
$('#idTxtArGenHtml').parent().replaceWith( '<span>'+$('#idTxtArGenHtml').parent().html()+'</span>');
}
Thủ thuật là bọc textarea của bạn bằng thẻ span để trợ giúp với chức năng thay thế. Tôi không chắc nó có sạch không, nhưng nó hoạt động hoàn hảo khi thêm mã html thô vào vùng văn bản.