如何将 JavaScript 变量插入 razor

How to insert a JavaScript variable into razor?

本文关键字:插入 razor 变量 JavaScript      更新时间:2023-09-26

如何将 JavaScript 变量插入 razor 中?我按用户单击insert-comment按钮的次数递增counter,然后我有一个 JavaScript 函数,可以为Comment添加新的输入框。但是,我在正确插入计数器作为数组索引时遇到问题,因为我收到"当前上下文中不存在名称'计数器'"错误。

型:

public List<String> Comment {get; set;}

视图:

var counter= 0;
jQuery(function($) {
    $('#insert-comment').on("click", function(e) {
        $(this).closest('tr').prev('tr').find('ul')
            .append(
                '<li>' +
                '@Html.EditorFor(model => model.Comment[counter], new { htmlAttributes = new { @class = "form-control col-xs-12" } })' +
                '</li>');
    });
    counter++;
});

您可以使用 razor 在 html 元素中复制变量值。

这个元素可以在javascript中读取。

我认为你不能,因为html助手在任何客户端脚本之前都会呈现。我只会像这样为编辑器附加 html。

'<li><input type="input" name="Comment[' + counter + ']" class = "form-control col-xs-12"></li>';