0

目标

使用 Razor 引擎在 HTML 上呈现图像类型的输入。

问题

我不知道语法(有吗?)。

场景

这是使用普通 HTML 呈现图像类型输入的方法:

<input type="file" name="image" />

但是,对于 Razor,我们该如何处理呢?

知识

我在网上搜索过,但没有结果。

4

3 回答 3

1

您可以简单地使用TextBoxForwithtype属性

你建模

public HttpPostedFileBase MyImageFile { get; set; }

在你看来

@Html.TextBoxFor(m => m.MyImageFile , new { type = "file" })
于 2013-08-19T13:30:25.223 回答
1

您可以使用下面的静态助手和 TagBuilder 来呈现

public static MvcHtmlString InputFile()
        {
            TagBuilder builder = new TagBuilder("input");
            builder.MergeAttribute("type", "file");
            builder.MergeAttribute("name", "image");

            return MvcHtmlString.Create(builder.ToString(TagRenderMode.SelfClosing));
        }
于 2013-08-19T13:32:46.810 回答
1

我只是有一个通用helpers.cshtmlApp_Code,我添加了这样的小脚本。如果你绑定到一个对象或有一个 uri,你可以重载/重写它。

帮助者.cshtml

@helper ImageInput(string image, string name = null) {
    <input type="image" src="@image" name="@name" />
}

您认为的使用情况

@helpers.ImageInput("/images/mypic.png")
于 2013-08-19T13:37:54.770 回答