0

我正在尝试编写一个调用 Dictionary 值的 javascript 函数,然后尝试将其拆分为“_”。问题是从 Dictionary 中获取值的 Key 位于从下拉列表中提取的 Javascript var 中。是否可以在 Javascript 中的 c# 函数中使用 Javascript var?

现在的代码:

var Category = document.getElementById('Properties').value;
var Name = document.getElementById(Category).value;
Category = '@Model.Dictionary[Name].Split('_')[0]';

编辑:

人们误解了我的问题,.Split 函数确实有效,但 Dictionary[Name] 给我带来了问题。如果我输入

var Category = document.getElementById('Properties').value;
var Name = document.getElementById(Category).value;
Category = '@Model.Dictionary["Bicycle"].Split('_')[0]';

进入代码它完美地工作,但我想动态地从 DropDownList 中获取“自行车”部分。

编辑2:

好的,我已经决定我过度思考的情况以及我正在尝试做的事情需要比需要的更多的工作,找到更好的解决方案,感谢所有试图帮助我的人。

4

3 回答 3

1

您在客户端和服务器端之间有点混淆。要与这样的服务器端代码进行交互,您需要发布到服务器或编写 AJAX 回调来调用服务器方法。

http://mikehadlow.blogspot.com/2008/10/mvc-framework-and-jquery-ajax-heaven.html

于 2012-02-06T15:37:58.500 回答
0

不,那是不可能的。所有服务器代码在页面发送到浏览器之前运行,所有客户端代码在之后运行。

要在客户端代码中使用字典,您必须做的是从服务器端创建 Javascript 代码,从而在客户端重新创建字典。

如果这不可能,您将不得不对服务器进行 AJAX 调用。

于 2012-02-06T15:46:49.503 回答
0

通过让 DropDownList 在 Value 和 Text 中具有不同的值,我完全避免了这个问题,这样做可以在不更改文本的情况下从 DropDownList 的值中获取曾经在字典中的所需输入。

于 2012-02-08T10:29:57.020 回答