在 echo 语句中连接 javascript 字符串和变量

我想限制一段文字的大小。包装器 div 有一个动态创建的 ID,段落文本也是动态插入的。HTML 和 JavaScript 在同一个文件中。


HTML


echo"

...

   <div id ='subTextWrapper$sub_id' >

      <p>$submission_text</p>

   </div>

...";

JavaScript:


echo"

<script>

...

var submissionId = $sub_id;


//Limit size of a submission if too long and show a link to read more

var submissionString = $('#subTextWrapper' + submissionId).html();


if (submissionString.split(' ').length > 50) {

   $('#subTextWrapper' + submissionId).html(submissionString.split(' ').slice(0, 50).join(' ') 

   + ' ... '

   + `<a class='read-more' + submissionId>Read more</a>`);

}


$('a.read-more' + submissionId).click(function () {

    $('#subTextWrapper' + submissionId).html(submissionString);

});

...

</script>";


在上面的 if 语句中,我想将类名read-more与变量 submitId 连接起来:


`<a class='read-more' + submissionId>Read more</a>`

这似乎不起作用。我不是 JS 专家,所以任何帮助将不胜感激。请注意,当我删除变量时,submissionId它会起作用,但显然它扩展了我所有动态创建的提交。


缥缈止盈
浏览 155回答 2
2回答

慕雪6442864

它会不会像这样工作。echo"<script>//Limit size of a submission if too long and show a link to read morevar submissionString = $('#subTextWrapper' + submissionId).html();if (submissionString.split(' ').length > 50) {$('#subTextWrapper' + submissionId).html(submissionString.split(' ').slice(0,&nbsp;50).join(' ')&nbsp;+ ' ... '+ `<a class='read-more' + submissionId>Read more</a>`);}$('a.read-more'$sub_id).click(function () {$('#subTextWrapper'$sub_id).html(submissionString);});...</script>";或者你也可以像这样连接&nbsp;$('a.read-more'".$sub_id.")
打开App,查看更多内容
随时随地看视频慕课网APP