无法在javascript中访问模型的属性

本文关键字:模型 属性 访问 javascript | 更新日期: 2023-09-27 17:50:10

我在这里尝试了一些建议,但似乎没有工作,我似乎无法访问模型的属性。这是我目前看到的

var widgetModel = '@Html.Raw(Json.Encode(Model.widgets))';
                [].forEach.call(widgetModel, function (widget) {
                    var template = document.querySelector('#panel-template');
                    var panelTitle = template.querySelector('.panel-title');
                    panelTitle.textContent = widget.WidgetName;
                });

这是渲染后的widget模型http://gyazo.com/4a960969d9bedbd71efb1dac9b99c7e6

我也试过像这样访问它,但是似乎没有任何属性挂起小部件变量。

for (var i = 0; i < widgetCount; i++) {
                        var widget = widget[i];
                        var template = document.querySelector('#panel-template');
                        var panelTitle = template.querySelector('.panel-title');
                        panelTitle.textContent = widget.WidgetName;
                    }

无法在javascript中访问模型的属性

混合javascript和Razor需要你用任何代码块包围你的Razor调用

@{ ... }@if(condition){}

并将代码本身放在转义序列

@:<text>标签

知道了这些,你就可以像

@{
        <text>
            var widgetModel = '@Html.Raw(Json.Encode(Model.widgets))';
        </text>
     }

参见混合Razor和Javascript代码和在Javascript中使用Razor