0

我想将一些用户输入存储到客户端的 cookie 中。使用 MVC3/Razor。数据输入到几个 DropDownLists。下面的一个例子:

<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]'。

4

1 回答 1

1

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

@ViewData["Filter1Value"] = filter1.toString(); 
于 2017-06-27T05:41:59.837 回答