如何将字符串呈现为ASP.NET MVC视图Javascript包含在引号中

时间:2016-05-12 16:34:21

标签: asp.net-mvc

在JQuery Validate插件中,您可以验证文件扩展名,如下所示:

 $("#my-form").validate({
        rules: {
            file: {
                required: true,
                extension: "xls|csv"
            }
        });

我在我的MVC应用程序中有一个有效扩展的列表,我使用服务器端,我认为只在一个地方维护它是很好的。所以我试着这样做:

 $("#my-form").validate({
        rules: {
            file: {
                required: true,
                extension: @string.Join("|", new FileHelper().ValidFileExtensions))
            }
        });

但是失败了,因为它没有用引号括起来。但是,这个:

extension: @string.Format("\"{0}\"", string.Join("|", new FileHelper().ValidFileExtensions)))

MVC引擎中的结果将引号呈现为"标记。

我可以将文件扩展名用引号括起来吗?

2 个答案:

答案 0 :(得分:1)

引号是客户端,而不是服务器端。只需将它们直接放在客户端代码中,就像对任何其他字符串文字一样:

extension: '@string.Join("|", new FileHelper().ValidFileExtensions))'

答案 1 :(得分:0)

在您的视图中声明变量,如下所示:

@{
   string validation = string.Format("\"{0}\"", string.Join("|", new FileHelper().ValidFileExtensions)));
 }

并像这样使用:

extension: @validation