在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引擎中的结果将引号呈现为"
标记。
我可以将文件扩展名用引号括起来吗?
答案 0 :(得分:1)
引号是客户端,而不是服务器端。只需将它们直接放在客户端代码中,就像对任何其他字符串文字一样:
extension: '@string.Join("|", new FileHelper().ValidFileExtensions))'
答案 1 :(得分:0)
在您的视图中声明变量,如下所示:
@{
string validation = string.Format("\"{0}\"", string.Join("|", new FileHelper().ValidFileExtensions)));
}
并像这样使用:
extension: @validation