繁体   English   中英

在JavaScript jQuery中使用换行

[英]Using new lines in 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);

}

只需使用+连接长字符串:

$('#'+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);
}

有两种方法可以做到这一点,即“仍然有效的黑客方式”和“适当的方式”。

破解方式:

$("#"+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)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM