相关疑难解决方法(0)

Chrome不会缓存隐藏的表单字段值,以便在浏览器历史记录中使用

我有一个ASP.Net Web表单,其中包含文本框字段和隐藏字段.使用客户端JavaScript动态修改隐藏字段值.发布表单,检查值并重定向到另一个页面都按预期工作.

但是,当我使用浏览器后退按钮显示上一页时,我希望看到所有表单字段仍然填充了已发布的值.

在IE和Firefox中,文本和隐藏输入字段都是这种情况.

在Chrome中,这仅适用于文本字段.隐藏字段的值丢失.

在导航浏览器历史记录时,Chrome是否真的会重新填充动态设置隐藏的表单字段值?

我已经将一个小样本放在一起以证明问题,如果需要可以提供.我想先问问题,看看这是否是众所周知的行为,我必须接受.

google-chrome back-button hidden-fields browser-history

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

在MVC/Razor中,如何获取多个复选框的值并将它们全部传递给控制器​​?

我有一个视图,其中包含模型中的项目列表.我需要为每一行添加一个复选框,让用户选中多个复选框,并将选择了哪一行的标识符传递给控制器​​.我知道如何通过动作链接传递单个值,但我不确定如何通过动作链接传递多个值或如何"收集"选择哪些行.我将在下面展示我的一些代码尝试.有人可以帮我理清为什么我无法获得传递给控制器​​的所有复选框的值吗?

这是我的页面

Checkbox     App ID     Date     Name
   []          1        5/10     Bob
   []          2        5/10     Ted
   []          3        5/11     Alice
Run Code Online (Sandbox Code Playgroud)

我需要用户做的是选择第1行和第3行(例如)并将这些App ID传递给控制器​​.

我开始列出各种尝试,但决定只显示我当前的尝试,看看是否有人可以指出我做错了什么.我在网上和我的例子中看到的主要区别是我使用PagedList并在foreach循环中创建表的行.

当命中控制器时,参数int为空白.如何从复选框中获取值?我使用这个站点的基本思想是将所有复选框命名为相同,并通过操作链接传递ICollection:http: //haacked.com/archive/2008/10/23/model-binding-to-a-list. ASPX /

视图:

@model PagedList.IPagedList<CarmelFinancialWeb.Models.ModelMerchantSummary>
<div class="block" style="width: 100%; float: left">
<p class="block-heading"> 
Merchant Application Report
</p>
<div class="table-holder">
    <table class="table" style="margin-bottom: 0px">
            <tbody>
                @foreach (var item in Model)
                {
                    <tr>
                        <td>
                            <input type="checkbox" name="ints" value=item.ApplicationID />
                        </td>
                    <td>
                        @Html.ActionLink(item.ApplicationID.ToString(), "ViewApplication", new { ID = item.ApplicationID, edit = 1 }, new AjaxOptions { HttpMethod …
Run Code Online (Sandbox Code Playgroud)

c# checkbox asp.net-mvc razor asp.net-mvc-4

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

将复选框列表传递到View并拉出IEnumerable

我有一个与用户关联的项目列表.这是一对多的关系.我希望将整个项目列表传递到视图中,以便他们可以从尚未与之关联的项目中进行选择(并且还可以查看已经关联的项目).我想从这些创建复选框.然后我想将所选择的那些发送回控制器以进行关联.我如何传递所有这些列表,包括那些尚未关联的列表,并可靠地将它们传回以进行关联?

这是我首先尝试的,但很明显这不会起作用,因为我基于通过AllItems集合传入的项目的输入,该集合与用户本身的项目没有任何关联.

<div id="item-list">
    @foreach (var item in Model.AllItems)
    {
        <div class="ui field">
            <div class="ui toggle checkbox">
                <input type="checkbox" id="item-@item.ItemID" name="Items" value="@item.Active" />
                <label for="item-@item.ItemID">@item.ItemName</label>
            </div>
        </div>
    }
</div>
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc razor asp.net-mvc-5

7
推荐指数
1
解决办法
7939
查看次数

ASP.NET Core以单一形式使用两个模型

Tuple用来传递视图内的两个模型,如下所示。

@model Tuple<AdvanceSearchModel, List<SearchUserModel>>
<form role="search" method="post" action="/Public/AdvanceSearch">
            <div class="form-group">
                <label>Name</label>
                <input name="FullNames" type="text" class="form-control" value=""/>
            </div>
            <div class="form-group">
                <label>Product</label>
                <input name="Products" type="text" class="form-control" value="" />
            </div>
            <div class="form-group">
                <label>Location:</label>
                <input name="Location" type="text" class="form-control" value="" />
            </div>
            <div class="form-group">
                <label>State</label>
                <input name="States" type="text" class="form-control" value="" />
            </div>
            <div class="form-group">
                <label>Country</label>
                <input name="Countries" type="text" class="form-control" value=""/>
            </div>
        </form>
Run Code Online (Sandbox Code Playgroud)

name输入中的所有属性均为AdvanceSearchModelasp-for当将多个模型传递到包含一个或多个表单的视图时,如何使用标记帮助器?在上述情况下提交表单后,如何保留表单的值?

asp.net asp.net-mvc asp.net-core-mvc asp.net-core

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

非顺序列表绑定不起作用

根据这篇文章,我试图绑定一个非顺序项列表.

视图:

<%using (Html.BeginForm("Products", "Home", FormMethod.Post))
{ %>
    <input type="hidden" name="products.Index" value="cold" />
    <input type="text" name="products[cold].Name" value="Beer" />
    <input type="text" name="products[cold].Price" value="7.32" />
    <input type="hidden" name="products.Index" value="123" />
    <input type="text" name="products[123].Name" value="Chips" />
    <input type="text" name="products[123].Price" value="2.23" />
    <input type="hidden" name="products.Index" value="caliente" />
    <input type="text" name="products[caliente].Name" value="Salsa" />
    <input type="text" name="products[caliente].Price" value="1.23" />
    <input type="submit" value="Submit" />
<%} %>
Run Code Online (Sandbox Code Playgroud)

行动方式:

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Products(IList<Product> products)
{
    return View("Index");
}
Run Code Online (Sandbox Code Playgroud)

绑定似乎对我不起作用,参数产品总是包含null.我错过了什么吗?

任何帮助非常感谢,谢谢.

请注意,我使用的是ASP.NET MVC 1.0

.net c# asp.net-mvc model-binding

3
推荐指数
1
解决办法
3365
查看次数

从具有可变输入数量的Form传递数据 - MVC 5

我一直在这里寻找类似的问题,但仍然找不到我的问题的解决方案.

我有一个包含一些文本和表单的页面,它们共享相同的ViewModel,如下所示:

public class MyViewModel
 {
   public IEnumerable<WordingB> WordingBs { get; set; }
   public IEnumerable<WordingC> WordingCs { get; set; }
   public IEnumerable<Question> Questions { get; set; } 
}
Run Code Online (Sandbox Code Playgroud)

这里有关于WordingB,WordingC和Question的更多细节:

public class WordingB
    {           
        public string EOW { get; set; }
    }



public class WordingC
    {           
        public string EOW { get; set; }
    }




public class Question
    {           
        public string QuestionText { get; set; }
        public string Answer {get; set;}
    }
Run Code Online (Sandbox Code Playgroud)

这是有问题的页面:

@model MyProject.ViewModels.MyViewModel   

<div class="col-md-6 masonry listview-block">
    @foreach (var wording …
Run Code Online (Sandbox Code Playgroud)

forms asp.net-mvc asp.net-mvc-viewmodel asp.net-mvc-5

0
推荐指数
1
解决办法
4479
查看次数