2013-07-30 56 views
2

我試圖動態地添加使用JQuery &一個div裏面的textarea裏面有下面的代碼:JQuery的文本區域添加一個div

@{  
    string emailText = ViewBag.email as string; 
} 

<script type="text/javascript"> 
    $(document).ready(function() { 
     var textArea = $('<textarea style="padding-left:100px" />'); 
     emailText = emailText.replace("$[Group Custom Text]$", textArea); 
     $("#divConfirmation").append(emailText); 
    }); 
</script> 

<div id="divAppointmentConfirmation"></div> 

問題是我得到的字符串值「的翻譯:」而不是HTML控件(文本區域)。

+1

textArea是一個jQuery對象。我不認爲你可以用一個對象替換一個字符串,除非它有一個toString方法。 – Virus721

+0

這是應該的。請參閱[replaceWith()文檔](http://api.jquery.com/replaceWith/)。嘗試將HTML直接放到那裏,或使用'replaceWith()' – bbill

+0

用字符串替換字符串,而不是用對象替換。 – mshsayem

回答

3

是的,因爲textArea是一個jQuery對象。

({}).toString()"[object Object]"

使用outerHTML來獲取它的html。

emailText = emailText.replace("$[Group Custom Text]$", textArea[0].outerHTML); 
1

這是因爲它需要一個字符串作爲參數。你可以試試這個:

emailText.replace("$[Group Custom Text]$", textArea[0].outerHTML); 
0

檢查下面的句子:

$("#divConfirmation").append(emailText); 

<div id="divAppointmentConfirmation"></div> 

你可以平凡指出,divConfirmation不是divAppointmentConfirmation糾正它。

相關問題