javascript - 如何正确连接来自 Javascript 和 PHP 的值?

标签 javascript php

在过去的两个小时里我一直在努力解决这个问题,但我无法让它工作。看一下下面的代码:

$js = '$.extend($.fn.fmatter , {
            userActions : function(cellvalue, options, rowData, addOrEdit) {
            var data = cellvalue.split("|");
            var id = options.rowId;
            var actions = "";';

foreach ($editorActions as $linkType => $value) {
    switch ($linkType) {
        case 'view':
            $js .= "if(data[1] == 1) {
                        actions += \"<a class='actionimage' href='" . $value . " + options.rowId' title='" . $this->translate->_e('View') . "' onClick='load_start();'><img src='/images/icons/16x16/document_view.png' width='16' height='16' alt='' /></a>\";
                    }";
    }

    break;
}

如您所见 id是来自 Javascript 的值,并且 $value来自 PHP。这个想法是获得一个超链接,例如:

$value = "/route/to/function/";
id = 19009; // I've omitted the $ sign since this var is coming from JS

var href = "' . $value . '" + id;'

然后我需要使用href var 作为 <a> 的一部分元素显示在定义之后。

使用上面的代码,我收到此错误:

Uncaught SyntaxError: Invalid or unexpected token

我可以获得一些帮助来解决这个问题吗?

更新:

这是渲染页面后代码的样子:

$(function () {
    $.extend($.fn.fmatter, {
        userActions: function (cellvalue, options, rowdata) {
            var data = cellvalue.split('|');
            var id = options.rowId;
            var actions = '';

            console.log(id);
            if (data[1] == 1) {
                actions += "<a class='actionimage' href='/sf/distributor/show/ + options.rowId' title='View' onClick='load_start();'><img src='/images/icons/16x16/document_view.png' width='16' height='16' alt='' /></a>";
            }

            return actions;
        }
    });
});

注意函数 $.extend 的作用正确关闭。 console.log(id)确实打印了 options.rowId 的值但是这个值对超链接没有任何影响,因为您可能会注意到这是值 /sf/distributor/show/ + options.rowId .

即将推出的内容 $value在上面的例子中 /sf/distributor/show/ 是一个纯字符串.

最佳答案

您缺少双引号以及结束并重新打开 options.rowId+ 周围的字符串:

actions += \"<a class='actionimage' href='" . $value . " + options.rowId'

应该是:

actions += \"<a class='actionimage' href='" . $value . "\" + options.rowId + \"'

关于javascript - 如何正确连接来自 Javascript 和 PHP 的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44287547/

相关文章:

php - 用于查询特定类别的wp帖子的sql语句

php - 带有返回语句的 Foreach 循环

php - PHP函数参数的3点

javascript - 使用 html2canvas 捕获图像后无法加载谷歌地图

javascript - D3 : Resize bar chart according to window width

javascript - 对重复的 HTML 使用相同的 JavaScript

php - 业务逻辑和模板之间如何交互?

javascript - 使现有的 C++ 项目能够在 Firefox OS 中运行

javascript - Backbone.js View 事件未触发

php - 使用字符串更新 XML 文件(SimpleXmlElement 对象)