簡體   English   中英

獲取最后添加的文本框asp.net mvc的值

[英]get value of last appended textbox asp.net mvc

在此輸入圖像描述

如果我點擊添加日期,則 begin_dateend_date將添加到我的視圖中。 一開始我只有1個開始和結束日期。 使用以下內容添加日期:

 $(document).ready(function () {

    var str = '<div class="form-group">' +
            '@Html.LabelFor(model => model.begin_date, new { @class = "control-label col-md-2" })' +
            '<div class="col-md-10">' +
              '  @Html.TextBoxFor(model => model.begin_date, new { @Value = ViewBag.startDate, id = "begin_date" })' +
               ' @Html.ValidationMessageFor(model => model.begin_date)' +
            '</div>' +
    ' </div>' +

       ' <div class="form-group">' +
           ' @Html.LabelFor(model => model.end_date, new { @class = "control-label col-md-2" })' +
          '  <div class="col-md-10">' +
              '  @Html.TextBoxFor(model => model.end_date, new { id = "end_date", @Value = ViewBag.endDate })' +
             '   @Html.ValidationMessageFor(model => model.end_date)' +
          '  </div>' +
      '  </div>';

    $("#addItem").click(function () {
        $.ajax({
            url: this.href,
            cache: false,
            success: function (html) { $("#editorRows").append(str); }
        });
        return false;
    });
});

在我的控制器中,我在post DateTime begin_date, DateTime end_date上有參數DateTime begin_date, DateTime end_date並且它們只接收第一個begin_dateend_date的值。 我如何獲得第一個begin_date最后添加的end_date的值

我的觀點: pastebin

郵政控制人:

 [HttpPost]
    public ActionResult Create(int merchantId, string name, DateTime begin_date, DateTime end_date)
    {
ViewBag.startDate = DateTime.Now.AddDays(1).ToShortDateString();
        ViewBag.endDate = DateTime.Now.AddMonths(1).ToShortDateString();

        TmpUniPaySchedulesRowArray nameValuePairArray = new TmpUniPaySchedulesRowArray();
        nameValuePairArray.TmpUniPaySchedulesRowArrayObj = new TmpUniPaySchedulesRow[1];
        TmpUniPaySchedulesRow row = new TmpUniPaySchedulesRow();

        row.Id = 0;
        row.BeginDate = begin_date;
        row.EndDate = end_date;
        row.AmountPercentage = 100;

        nameValuePairArray.TmpUniPaySchedulesRowArrayObj[0] = row;
Oracle.DataAccess.Client.OracleCommand oracleCommand = new Oracle.DataAccess.Client.OracleCommand(); //gasasworebelia!!!!!

        oracleCommand.Connection = new Oracle.DataAccess.Client.OracleConnection(System.Configuration.ConfigurationManager.ConnectionStrings["OracleBillUser"].ConnectionString);

        oracleCommand.CommandType = System.Data.CommandType.StoredProcedure;
        oracleCommand.CommandText = "tmp_uni.pay_schedules_group_add";
        oracleCommand.Parameters.Add(new Oracle.DataAccess.Client.OracleParameter("ai_merchant_id", Oracle.DataAccess.Client.OracleDbType.Int32, merchantId, System.Data.ParameterDirection.Input));
        oracleCommand.Parameters.Add(new Oracle.DataAccess.Client.OracleParameter("ai_name", Oracle.DataAccess.Client.OracleDbType.Varchar2, name, System.Data.ParameterDirection.Input));
        oracleCommand.Parameters.Add(new Oracle.DataAccess.Client.OracleParameter("ai_begin_date", Oracle.DataAccess.Client.OracleDbType.Date, begin_date, System.Data.ParameterDirection.Input));
        oracleCommand.Parameters.Add(new Oracle.DataAccess.Client.OracleParameter("ai_end_date", Oracle.DataAccess.Client.OracleDbType.Date, end_date, System.Data.ParameterDirection.Input));
        Oracle.DataAccess.Client.OracleParameter paramPayerInputData = new Oracle.DataAccess.Client.OracleParameter("ai_pay_schedules_values", Oracle.DataAccess.Client.OracleDbType.Array, nameValuePairArray, System.Data.ParameterDirection.Input);
        paramPayerInputData.UdtTypeName = "TMP_UNI_PAY_SCHEDULES_TYPE"; //case sensitive!!!
        oracleCommand.Parameters.Add(paramPayerInputData);
        oracleCommand.Parameters.Add(new Oracle.DataAccess.Client.OracleParameter("ao_error_code", Oracle.DataAccess.Client.OracleDbType.Int32, System.Data.ParameterDirection.Output));

        if (oracleCommand.Connection.State == System.Data.ConnectionState.Closed)
            oracleCommand.Connection.Open();

        try
        {
            oracleCommand.ExecuteNonQuery();

            int returnErrorCode = int.Parse(oracleCommand.Parameters["ao_error_code"].Value.ToString());
        }
        catch (OracleException ex)
        {
            Console.WriteLine(ex.ToString());
        }



        return RedirectToAction("Index");
    }

模型綁定使用輸入的名稱; 由於您要復制控件名稱,請嘗試更改方法以接受日期時間對象的集合:

public ActionResult Create(int merchantId, string name, IEnumerable<DateTime> begin_date, IEnumerable<DateTime> end_date)

你當然必須遍歷這個以獲得你自己的第一個/最后一個項目。

var firstBeginDate = begin_date.First();
var lastEndDate = end_date.Last();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM