将输入数据保存在多个Asp.NET部分中

时间:2017-09-26 07:18:53

标签: asp.net asp.net-mvc asp.net-mvc-partialview

我有一个订单页面,订单表格分为3个单独的表格,如标签,对于每个单独的表格,我创建了一个局部视图,在按钮点击时使用ajax加载。

以下是订单页面示例:

%timeit rpt_idx(series)
The slowest run took 10.50 times longer than the fastest. This could mean that an intermediate result is being cached.
100000 loops, best of 3: 1.99 µs per loop

%timeit divakar(series)
The slowest run took 7.73 times longer than the fastest. This could mean that an intermediate result is being cached.
100000 loops, best of 3: 12.5 µs per loop

series_ = np.tile(series,10000).tolist()

%timeit divakar(series_)
100 loops, best of 3: 20.1 ms per loop

%timeit rpt_idx(series_)
100 loops, best of 3: 5.84 ms per loop

部分(其他人看起来像这样,带有其他输入字段):

    @model MyApp.Models.ViewModels.OrderViewModel
    <nav class="basket-menu">
        <ul class="basket-menu__list">
            <li class="basket-menu__item">
                <a href="#" class="basket-menu__link active" id="basket">
                    Your order
                </a>
            </li>

            <li class="basket-menu__item">
                <a href="#" class="basket-menu__link disabled" id="delivery">
                    Delivery
                </a>
            </li>

            <li class="basket-menu__item">
                <a href="#" class="basket-menu__link disabled" id="payment">
                    Payment
                </a>
            </li>
        </ul>
    </nav>
    <div id="order-block">
        @{Html.RenderPartial("StartOrder", Model);}
    </div>

ViewModel和订单类:

@model MyApp.Models.ViewModels.OrderViewModel
<form class="basket-form">
    <div class="basket-form__input-line">
        <label for="b-name" class="basket-form__label">
            Name <span class="star-req">*</span>
        </label>
        <input type="tel" class="basket-form__input" name="Order.Name"id="b-name" autofocus>
    </div>

    <div class="basket-form__input-line">
        <label for="b-phone" class="basket-form__label">
            Phone
        </label>
        <input type="text" class="basket-form__input phone" name="Order.Phone" id="b-phone">
    </div>

    <div class="basket-form__input-line">
        <label for="b-mail" class="basket-form__label">
            E-mail <span class="star-req">*</span>
        </label>
        <input type="email" class="basket-form__input" name="Order.EMail" id="b-mail">
    </div>
</form>

还有加载部分的脚本(其他的都是这样的):

public class OrderViewModel
{
    public Order Order {get; set;}
    public List<Cart> CartItems { get; set; }
}
public class Order
{
    public string Name { get; set; }
    public string Phone { get; set; }
    public string EMail { get; set; }
    public string Street { get; set; }
    public string BuildingNumber { get; set; }
    public string Appartment { get; set; }
    public string Entrance { get; set; }
    public int Floor { get; set; }
    public DateTime DateCreated { get; set; }
    public DateTime ReadyTime { get; set; }
    public string Comments { get; set; }
    public bool IsDelevery { get; set; }
    public bool IsNoneCash { get; set; }
    public bool IsNeedChange { get; set; }
    public string ChangeValue { get; set; }
    public decimal Total { get; set; }
    public List<OrderItem> OrderItems { get; set; }
}

交付行动方法:

$(function () {
    $("#delivery").click(function () {
        $("#order-block").load("@Url.Action("Delivery", "Order")");
        $("#basket").addClass("disabled").removeClass("active");
        $("#delivery").addClass("active").removeClass("disabled");
    });
});

当我切换部分内容时,如何在表格中保存数据?

例如,当我填写第一个表单,然后调用另一个部分,然后返回到第一个,我如何保留填写的表单?

0 个答案:

没有答案