【问题标题】:how to put php code inside a jquery function如何将php代码放入jquery函数中
【发布时间】:2020-02-15 20:56:27
【问题描述】:

当字符数超过 300 时,我想在 div 'guest-message' 中添加“阅读更多”链接。

链接中有一些php变量:

<a href="?data=<?php echo $database; ?>&guest=<?php echo $item[3]; ?>" title="permalink" class="permalink">Read more</a>

jquery 函数:

    $(".guest-message").each(function () {
        len=$(this).text().length;
        str= $(this).text().substr(0,300);
        lastIndexOf = str.lastIndexOf(" "); 
        if(len>300) {
            $(this).text(str.substr(0, lastIndexOf) + '...Read more');
        }
    });
}); 

那么:我怎样才能将 js 中的链接放在现在“...阅读更多”的地方?

【问题讨论】:

  • 您只需在需要时构建链接,然后在每个链接中添加$(this).html(newLink)。但是你的问题措辞很奇怪。您是否在构建链接或访问 php 变量时遇到困难?因为为了访问 javascript 中的 php 变量,您必须生成其中包含该变量值的 javascript。例如var database = '<?= $database ?>';
  • 没有我的问题是建立链接
  • 构建链接可以很简单,并使用字符串连接或使用模板文字的字符串插值来构建 html。制作 html 后,您可以使用 html() 进行设置,正如我在第一条评论中所展示的那样。
  • 您可以尝试将 php 链接的 html sn-p 分配给一个变量,并将该变量简单地包含在 jquery 函数中。喜欢var temp_link = '<a href...' 然后使用temp_link 而不是“阅读更多......”

标签: php jquery hyperlink substring


【解决方案1】:

使用以下代码。

$(".guest-message").each(function () {
    len=$(this).text().length;
    str= $(this).text().substr(0,300);
    lastIndexOf = str.lastIndexOf(" "); 
    if(len>300) {
        $(this).text(str.substr(0, lastIndexOf));
        $(this).append('... <a href="?data=<?php echo $database; ?>&amp;guest=<?php echo $item[3]; ?>" title="permalink" class="permalink">Read more</a>');
    }
});

【讨论】:

    猜你喜欢
    • 2012-01-30
    • 2022-12-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-08
    • 2022-01-13
    相关资源
    最近更新 更多