javascript 在Razor中为ViewData赋值

gkl3eglg  于 2023-02-21  发布在  Java
关注(0)|答案(1)|浏览(252)

我想存储一些用户输入到客户端的cookie。使用MVC 3/Razor。数据输入到几个下拉列表。下面的一个例子:

<div style="float: left;">
  @Html.Telerik().DropDownList()
     .Name("name").BindTo((SelectList)@ViewBag.Filter1SelectList)
     .Placeholder("All")
     .ClientEvents(events => events
     .OnChange("onChangeFilter1"))
</div>

我创建了下面的JavaScript,试图在下拉列表值更改时存储值。

function onChangeFilter1(e) {
    var filter1 = document.getElementById('name').value;        
    '<%= ViewData["Filter1Value"]%>' = filter1.toString();        
}

这个想法是从多个下拉列表中收集几个过滤器。数据在提交按钮上过滤。这甚至是可能的吗?我只看到一个例子,并仔细复制它,但上面的错误:Microsoft JScript运行时错误:无法分配给“[string]”。

z31licg0

z31licg01#

尝试在ViewData前放置@符号,它将允许您将筛选器值分配给ViewData

@ViewData["Filter1Value"] = filter1.toString();

相关问题