2013-03-09 26 views
1

我使用採用新的生產線在JavaScript的jQuery

$('#'+type+'name'+id).hide().html('ghj').fadeIn(150); 

工作正常。但是,當我使用

$('#'+type+'name'+id).hide().html(' 
A lot of html code 
').fadeIn(150); 

該功能不起作用了。由於我想保持整潔的功能,我想把HTML放在多行中。爲什麼不工作?

編輯: 還不行:

function Rename(type,id,content){ 
$('#'+type+'name'+id).hide().html(' '+ 
    ' <td height=\"20\" valign=\"middle\">'+ 
    '  <span onclick=\"RenameDo(\'notify\',\''+id+'\',''+content+'')\">'+ 
    '   <img title=\"Wijzigen\" class=\"LinkImage\" src=\"/common/images/save.png\">'+ 
    '  </span>'+ 
    ' </td>'+ 
    ' <td valign=\"middle\" rowspan=2>&nbsp;fghfgh</td>'+ 
' ').fadeIn(150); 

} 
+0

如果你不寫就很難猜出是怎麼回事的代碼。 – bgusach 2013-03-09 19:05:49

+0

發佈您的預期HTML輸出,不包含所有轉義引號。函數'RenameDo'是否將字符串作爲參數? – ATOzTOA 2013-03-09 19:20:01

回答

4

只需使用+來連接長字符串:

$('#'+type+'name'+id).hide().html(' ' + 
'A lot of html code' + 
' ').fadeIn(150); 

或者使用\逃脫換行符:

$('#'+type+'name'+id).hide().html('\ 
A lot of html code\ 
').fadeIn(150); 

更新

對於特定的字符串,用這個:

function Rename(type,id,content){ 
    $('#'+type+'name'+id).hide().html(' '+ 
     ' <td height="20" valign="middle">'+ 
     '  <span onclick="RenameDo(\'notify\',\'' + id + '\',\'' + content + '\')">' + 
     '   <img title="Wijzigen" class="LinkImage" src="/common/images/save.png">'+ 
     '  </span>'+ 
     ' </td>'+ 
     ' <td valign="middle" rowspan=2>&nbsp;fghfgh</td>'+ 
    ' ').fadeIn(150); 
} 
+0

謝謝!所以JavaScript真的看起來我把「輸入」放在哪裏?煩! – Mbrouwer88 2013-03-09 19:06:53

+1

@ Mbrouwer88是不是每個語言如何處理字符串? – ATOzTOA 2013-03-09 19:07:56

+0

字符串中的空格在PHP中也很重要 – 2013-03-09 19:08:08

1

有兩種方法可以做到這一點,「那工作呢黑客方式」,和「有道」。

哈克方式:

$("#"+type+"name"+id).hide().html("\ 
A lot of html code\ 
").fadeIn(150) 

說明:通過在該行的末尾添加一個反斜槓,你是有效地「逃脫」新行,因此被忽略,而不是一個未終止字符串常量。

有道:

$("#"+type+"name"+id).hide().html(
"A lot of html code\n" 
+"Just adding some more\n" 
+"Because whitespace outside of strings is fine." 
).fadeIn(150) 
+0

注意轉義換行符被刪除,不被視爲換行符 – 2013-03-09 19:09:41

+0

@JanDvorak謝謝。編輯答案。 – 2013-03-09 19:10:08

+0

只要有文件記錄,我不確定我會稱它爲黑客。 – 2013-03-09 19:10:38