javascript - 如何将 php 元素转换为 javascript

标签 javascript php

我正在为论坛编写聊天脚本,它似乎使用 php 来获取用户的头像。 (PS idk 任何关于天气或不 javascript 可以使用 sql 数据库或如何使用它,所以我想坚持使用 php)但问题是,如果我将 php 变量放入其中,javascript 不喜欢它。

    getUserNodeString: function(userID, userName, userRole) {
    var encodedUserName, str;
    if(this.userNodeString && userID === this.userID) {
        return this.userNodeString;
    } else {
        encodedUserName = this.scriptLinkEncode(userName);
        str = '<div id="'
                + this.getUserDocumentID(userID)
                + '"><a href="javascript:ajaxChat.toggleUserMenu(\''
                + this.getUserMenuDocumentID(userID)
                + '\', \''
                + encodedUserName
                + '\', '
                + userID
                + ');" class="'
                + this.getRoleClass(userRole)
                + '" title="'
                + this.lang['toggleUserMenu'].replace(/%s/, userName)
                + '">'
                + userName
                + '</a><?php echo \'<img src="test.php" />\' ?>'
                + '<ul class="userMenu" id="'
                + this.getUserMenuDocumentID(userID)
                + '"'
                + ((userID === this.userID) ?
                    '>'+this.getUserNodeStringItems(encodedUserName, userID, false) :
                    ' style="display:none;">')
                + '</ul>'
                +'</div>';
        if(userID === this.userID) {
            this.userNodeString = str;
        }
        return str; 
    }
},
  • '</a><?php echo \'<img src="test.png" />\' ?>' 是我尝试使用的行,我还没有放置我的变量,我首先尝试使用测试图像

最佳答案

应该是这样的:

+ '</a><img src="<?php echo htmlentities($src, ENT_DISALLOWED | ENT_QUOTES | ENT_HTML5) ?>" />'

您应该只转义回 PHP 来获取需要包含 PHP 变量的代码的特定部分。其余部分应该是文字 HTML 或 Javascript。

您还应该使用 htmlspecialchars() 来确保变量内容经过正确编码,以便在 HTML 属性中使用,以防它包含特殊字符。

上面的内容是将 PHP 变量获取到包含 HTML 代码的 JS 文本中。如果您只是想将 PHP 值放入 Javascript 变量中,则略有不同。然后你可以使用 json_encode() 生成 JS 表示:

var js_var = <?php echo json_encode($php_var) ?>;

关于javascript - 如何将 php 元素转换为 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28255571/

相关文章:

php - MySql 限制和偏移给出错误结果

php - 我更新时出现错误消息

javascript - jQuery if 语句似乎不起作用

javascript - 在全局范围内要求 Sails.js 中的模块的最佳实践?

javascript - 有没有一种可行的方法来对图像 :data base64 进行特征检测支持

php - 我的数据库未保存在我的 SQL WAMP 服务器中形成的表中

php - 将 Zend 1 包装到 Symfony 2 中。如何共享 session ?

php - 如何从数据库中获取值、对它们求和并在 codeigniter 中显示它们?

javascript - 链接 JS Set 方法会导致 TypeError

javascript - 为什么 for-of 循​​环对于小数组比标准 for 循环更快而对于更大数组更慢?