标签: webgrid

MVC 3 Webgrid专栏

我正在开发一个MVC 3 webgrid,在我希望有一个按钮的一个列中,我已经在视图中放入以下代码时实现了这一点.

@grid.GetHtml(columns:
            grid.Columns(
            grid.Column("ID", "id", canSort: true),
            grid.Column("Surname", "surname", canSort: true),
            grid.Column("Forenames", "forename", canSort: true),
            grid.Column(format: @<input type="button" value="View"/>)),
            headerStyle: "header",
            alternatingRowStyle: "alt",
            htmlAttributes: new { id = "DataTable" }
            )
Run Code Online (Sandbox Code Playgroud)

但是我希望创建网格服务器端以进行分页,但是当我将下面的代码放在操作中时,我得到了按钮列的错误.

var htmlString = grid.GetHtml(tableStyle: "webGrid",
                                          headerStyle: "header",
                                          alternatingRowStyle: "alt",
                                          htmlAttributes: new { id = "DataTable" },
                                          columns: grid.Columns(
                                                grid.Column("ID", "id", canSort: true),
                                                grid.Column("Surname", "surname", canSort: true),
                                                grid.Column("Forenames", "forename", canSort: true),      
                                                grid.Column(format: @<input type='button' value='View'/>)                                                                          
                                           ));
Run Code Online (Sandbox Code Playgroud)

第一个错误是"在逐字说明符后预期的关键字,标识符或字符串:@".

我在按钮列上使用了不正确的格式吗?

asp.net-mvc webgrid

5
推荐指数
1
解决办法
2万
查看次数

Webgrid日期时间和设置样式的格式

我在使用WebGrid时遇到语法问题.在我正常的剃刀标记中,我在我的foreach中格式化日期,就像这样

<td>
        @String.Format("{0:MM/dd/yy hh:mm:ss}", item.complianceedatetime)
    </td>
Run Code Online (Sandbox Code Playgroud)

我设置我的列宽如此

<th width="150px">
        Download Date/Time
    </th>
Run Code Online (Sandbox Code Playgroud)

我将如何使用Grid.Column语法执行此操作

grid.Column("complianceedatetime", "Download Date/Time", ?, ?)
Run Code Online (Sandbox Code Playgroud)

webgrid razor

5
推荐指数
2
解决办法
1万
查看次数

如何更改WebGrid操作以获取数据(.NET MVC3)

我有一个呈现WebGrid的部分视图.我的控制器看起来像

public ActionResult Index()
{
    return View();
}
public ActionResult GetUserList(int? page, string sort, string sortdir)
{
    var model = UserModel.getList(page,sort,sortdir);
    return PartialView("_UserList",model);
}
Run Code Online (Sandbox Code Playgroud)

Index.cshtml: 问题是我每次点击网格导航或排序链接时都会调用方法.如何让Webgrid执行不同的操作(在本例中)?我确信我可以使用jquery在网格中添加所有链接,但我相信它应该是更好的方法. 我正在做的事情也可能是完全错误的,所以感谢您的建议.
....
@Html.Action("GetUserList")

IndexGetUserListGetUserList

webgrid asp.net-mvc-3

5
推荐指数
1
解决办法
6336
查看次数

在MVC webgrid中添加"加载"指示符?

我正在使用MVC3并在webgrid中显示我的数据.我想显示我过滤/搜索时显示的加载指示符(加载图像).什么是最好的方法?

我的搜索过滤器(代码):

@using (Html.BeginForm())
{
     <fieldset  id="fieldset1" class="coolfieldset">

        <legend>Search for Towers Watson Subscribers/Contacts</legend>
        <div class="div-table">
        <div class="div-table-row">
            <div class="div-table-col">Reg Date:</div>
            <div class="div-table-col"><input id="regDateFrom" class="datepicker" name="regDateFrom" value="@regDateFrom" type="text" /> to <input id="regDateEnd" class="datepicker" value="@regDateEnd" name="regDateEnd" type="text" /></div>
        </div>
        <div class="div-table-row">
            <div class="div-table-col">Profile Mod Date:</div>
            <div class="div-table-col"><input type="text" id="profileModDateFrom" class="datepicker" value="@profileModDateFrom"  name="profileModDateFrom" /> to <input id="profileModDateEnd" class="datepicker" value="@profileModDateEnd" name="profileModDateEnd" type="text" /></div>
        </div>
        <div class="div-table-row">
            <div class="div-table-col">Last Name:</div>
            <div class="div-table-col"><input type="text" id="lastName" name="lastName" value="@lastName" /></div>
        </div>
          <div class="div-table-row">
            <div class="div-table-col"><input id="search" name="search" type="submit" …
Run Code Online (Sandbox Code Playgroud)

image loading webgrid asp.net-mvc-3

5
推荐指数
1
解决办法
2568
查看次数

在排序或分页ASP.net MVC Webgrid时显示Ajax加载指示器

我可以轻松地连接webgrid并使用默认设置向其添加ajax.但是我一直在努力弄清楚的一件事是当网格排序或通过ajax分页时如何添加加载指示器.

有一个内置的回调函数,可以很好地关闭ajax加载指示器,但我怎么能轻松打开一个?

下面是我目前为我的webgrid编写的代码.

@{
    var grid = new WebGrid(rowsPerPage: Model.CountPerPage, ajaxUpdateContainerId: "GridArea");
    grid.Bind(Model.Users,
              autoSortAndPage: false,
              rowCount: Model.TotalCount
            );
    grid.Pager(WebGridPagerModes.All);
}
<div id="GridArea">
    @grid.GetHtml(htmlAttributes: new {id ="UserGrid"},
        columns: new [] {
        grid.Column("ID", canSort: false),
        grid.Column("FirstName"),
        grid.Column("LastName"),
        grid.Column("Email"),
        grid.Column("FullName", canSort: false)
        }
    )
</div>
Run Code Online (Sandbox Code Playgroud)

我尝试过使用以下内容,但这些都没有奏效.

<script>
    $(function () {
        $("#UserGrid").live("ajaxStart", function () {
            alert("start");
        });
    });
</script>
Run Code Online (Sandbox Code Playgroud)

这个第一次工作但在网格完成第一次ajax刷新后无法工作.

<script>
    $(function () {
        $('#UserGrid').ajaxStart(function () {
            alert("start");
        });
    });
</script>
Run Code Online (Sandbox Code Playgroud)

asp.net ajax asp.net-mvc jquery webgrid

5
推荐指数
1
解决办法
4302
查看次数

为什么我不能在Razor WebGrid中的委托中使用我的扩展方法

我正在使用MVC 3引入WebGrid,但在传递formatparam 的委托时不能应用我自己的扩展方法.

使用:

Grid.Column("MyProperty", "MyProperty", 
format: @<span class="something">@item.MyProperty.MyExtensionMethodForString()</span>)
Run Code Online (Sandbox Code Playgroud)

我有

ERROR: 'string' does not contain a definition for 'MyExtensionMethodForString'
Run Code Online (Sandbox Code Playgroud)

我试过铸造,但没有用

Grid.Column("MyProperty", "MyProperty", 
format: @<span class="something">@((string)(item.MyProperty).MyExtensionMethodForString())</span>)
Run Code Online (Sandbox Code Playgroud)

如果我使用标准方法,它的工作原理:

Grid.Column("MyProperty", "MyProperty", 
format: @<span class="something">@(Utils.MyExtensionMethodForString(item.MyProperty))</span>)
Run Code Online (Sandbox Code Playgroud)

我也尝试将扩展名放在同一名称空间中,没有结果.

我如何使用我心爱的扩展?

编辑:命名空间本身不是问题,扩展可用于所有视图和类的命名空间,我可以在同一视图中使用它而没有问题.问题是在委托中使用它.

c# asp.net-mvc webgrid

5
推荐指数
1
解决办法
781
查看次数

是MVC WebGrid开源吗?

是MVC WebGrid开源吗?如果是这样,我在哪里可以找到源代码.

WebGrid的当前版本几乎没有文档,不完整的实现等.

我试图做一个简单的事情,如在视图中向WebGrid.Column()添加一个visibility属性,但这是不可能的

c# webgrid asp.net-mvc-3

4
推荐指数
1
解决办法
3058
查看次数

ASP.NET MVC3:WebGrid + Ajax过滤器+ Ajax排序和分页

基本上,我正在使用WebGrid,我需要过滤结果.我在这里遇到的第一个问题是我第一次使用WebGrid而且我希望你们中的一些人能够帮助我...到目前为止,我已经设法对网格结果进行排序并使用Ajax过滤它们,但是,当重新排序过滤后的结果,子集丢失了,我回到完整的结果集.我知道为什么会发生这种情况,但我不知道如何让它发挥作用.

例:

在我看来:

@model IQueryable<Cities>
@section MoreScripts
{
    <script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")" type="text/javascript"></script>
}

@using (Ajax.BeginForm(new AjaxOptions { InsertionMode = InsertionMode.Replace,     UpdateTargetId = "GridData"}))
{
    <fieldset>
        <legend>Search Filters</legend>
        <br />
        <div>
            Name
        </div>
        <div>
            @Html.TextBox("Name")
        </div>
        <p>
            <input type="submit" value="Search" />
        </p>
    </fieldset>
}

<div id="GridData">
    @Html.Partial("Grid", Model)
</div>
Run Code Online (Sandbox Code Playgroud)

我的部分观点:

@model IQueryable<Cities>

@{
    var grid = new WebGrid<Cities>(null,rowsPerPage: 5, defaultSort: "Nombre", ajaxUpdateContainerId: "GridData");
    grid.Bind(Model, autoSortAndPage: true, rowCount: Model.Count());
    @grid.GetHtml(columns: 
                    grid.Columns(
                                grid.Column("Name", "Name", canSort: true),
                                grid.Column("CreationDate", "Creation Date", canSort: true),
                                grid.Column("Active", "Active", canSort: …
Run Code Online (Sandbox Code Playgroud)

jquery webgrid asp.net-mvc-3

4
推荐指数
1
解决办法
1万
查看次数

ASP.NET MVC3 WebGrid - 自定义,服务器端排序

有没有办法覆盖默认的MVC3 WebGrid排序行为来调用我的控制器(它将执行服务器端排序并返回数据)调用排序?

谢谢你的帮助!

sorting webgrid razor asp.net-mvc-3

4
推荐指数
1
解决办法
5643
查看次数

发布webgrid asp.net mvc3的项目

我有这些DTO

public class Header
{
    public int HeaderId{get;set;}
    public int Description{get;set;}
    public List<HeaderItem> HeaderItems{get;set;}

}

public class HeaderItem
{
    public int HeaderItemId{get;set;}
    public string DetailDescription{ get; set; }
    public bool Selected{ get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我有这个控制器

    [HttpPost]
    public ActionResult PostMethod(Header dto)
    {
        ...
    }
Run Code Online (Sandbox Code Playgroud)

和这个HTML

  @using (Html.BeginForm("PostMethod", "Controller", FormMethod.Post, new { id = "form" }))

{

@Html.TextBoxFor(x => x.Description)    

var grid = new WebGrid(Model.HeaderItems);
    }
    @grid.GetHtml(tableStyle: "grid",
    htmlAttributes: new { id = "grid" },
    columns: grid.Columns(
    grid.Column("Selected", "Seç", format: (item) …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc webgrid asp.net-mvc-3

4
推荐指数
1
解决办法
2261
查看次数

标签 统计

webgrid ×10

asp.net-mvc-3 ×6

asp.net-mvc ×4

c# ×2

jquery ×2

razor ×2

ajax ×1

asp.net ×1

image ×1

loading ×1

sorting ×1