asp.net-mvc-3 – 在Razor View模型中添加一个类到Ajax.BeginForm调用

我有一个以下代码
@using (Ajax.BeginForm(new AjaxOptions { UpdateTargetId = "update_panel",Url = "/Part/SearchPart" }))
        {
            <input type="text" placeholder="Search Parts"/>
            <input type="submit" value="Search"/>
        }

输出以下HTML

<form action="/Part" data-ajax="true" data-ajax-mode="replace" data-ajax-update="#update_panel" data-ajax-url="/Part/SearchPart" id="form0" method="post">                        
    <input type="text" placeholder="Search Parts"/>
        <input type="submit" value="Search"/>
</form>

我希望输出的HTML具有>的形式.标签让class =“pull-right”.我该如何做到这一点?

解决方法

您可以使用 one of the overloads,允许您指定html属性::
@using (Ajax.BeginForm(null,null,new AjaxOptions { UpdateTargetId = "update_panel",Url = "/Part/SearchPart" },new { @class = "pull-right" }))
{
    <input type="text" placeholder="Search Parts"/>
    <input type="submit" value="Search"/>
}

此外,我强烈建议您依靠窗体的url,而不是在AjaxOptions中进行硬编码,因为在虚拟目录中部署应用程序时,您的硬编码/ Part / SearchPart网址将无法正常工作.更不用说在Global.asax中更改路由模式.所以:

@using (Ajax.BeginForm("SearchPart","Part",new AjaxOptions { UpdateTargetId = "update_panel" },new { @class = "pull-right" }))
{
    <input type="text" placeholder="Search Parts"/>
    <input type="submit" value="Search"/>
}

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....