2012-03-15 45 views
1

我有一些代碼如下DOM操作..JQuery的 - 對一個變量

<div class="b-oneColumn w-text"> 
<div class="e-text1"> 
    <textarea id="mce_0" class="tiny" rows="10" ria-hidden="true">Some text here</textarea> 
    <span id="mce_0_parent" class="mceEditor defaultSkin">.....</span> 
</div> 
</div> 

什麼我做的是通過$以下功能..

processTextForServer : function(widget) { 
var myText = 'mycontent'; 
var widgetHtml = $('div').append($(widget).clone()).find('.mceEditor').remove().end().html(); 
} 
( 'W-文本'。)

基本上,我克隆元素,從標記中刪除span.mceEditor,並將html存儲到widgetHtml - 沒有問題,但我現在想進一步操縱html字符串,就好像它是一個DOM元素,但沒有改變實際的元素 - 並將結果捕獲到變量中以上載到數據庫。我所需要做的就是將textarea文本更改爲myText變量的內容,然後將整個內容保存到另一個變量中,但出於某種原因,我無法做到這一點,任何想法都將非常受歡迎。

感謝您的意見,有相應的修改,但總體來說,我想實現的是這樣的......

 var widgetHtml = $('<div>').append(widget.clone()).find('.mceEditor').remove().end().find('.tiny').html('new text').end().html(); 
// this following alert should show me the original chunk of html, MINUS the span.mceEditor AND with the textarea contents changed(manipulated) 
alert(widgetHtml); 

這可能嗎?

只是重新迭代,我只對變量 - 我打算髮送到服務器感興趣,我不想改變實際的dom結構本身中的任何東西。 謝謝。

+0

它是什麼,你需要「操縱」你在試圖得到儘可能您的最終結果變量?請提供編輯給您的原始答案,並提供您需要以務實的方式完成的任務。你試過什麼了? – Ohgodwhy 2012-03-15 01:21:54

+0

如果您將$('.w-text')傳遞給processTextForServer函數,那麼您稍後將其引用爲$(widget).clone(),這就像是說:$($('.w-text '))。clone()它應該改爲widget.clone() – jholloman 2012-03-15 01:23:46

回答