0

在我的 MVC 应用程序中,我创建了视图 Index.cshtml,并在那里声明了 C# 变量。

例如:string selectedvalue="";

现在如何在我在这个 Index.cshtml 中编写的 javascript 函数代码中使用它,以便我可以在 javascript 函数中将一些文本附加到这个字符串?

字符串选择值=“”;// 编码部分函数 onchangeFT(e) { '@selectedvalue'= e.value; //e.value 来自组合框,应该分配给“selectedvalue” alert('@selectedvalue'); }

它给了我错误...

有什么想法可以解决这个问题吗?

4

1 回答 1

0

我认为您对在这种情况下所做的事情感到困惑。

您已使用 MVC razor 语法声明了 C# 变量 @selectedValue。然后,您可以使用此变量将其值注入到输出到客户端的内容中。但是,您不能从客户端 javscript 代码分配回此变量,因为它不存在。您的错误将与您实际上试图将对象值分配回无效的文字字符串声明这一事实有关。

在你的例子中

'@selectedValue'=e.value;

将转化为

'' = e.value;

这是因为 MVC razor 会自动将 c# 参数翻译成它的值并按字面意思输出。为了将变量分配给 e.value,您应该创建一个 javascript 值作为脚本块的一部分,然后您的脚本将其识别为可用的目标变量。

例如:

var selectedValue = '';
selectedValue = e.value;
于 2012-06-07T15:22:16.057 回答