تاپیک مورد نظر بسته شده است
سلام
من یه فرم ساز طراحی کردم که فیلدهارو از دیتابیس میاره و مشکلی ندارم
حالا میخام وقتی اطلاعات تکمیل میشه و ارسال میشه دخیره کنم!
من اینجوری عمل کردم:
کدهای مربوط به View فرمی که به کاربر نشون داده میشه
@using (Html.BeginForm("SaveTest", "RequestCompletions", FormMethod.Post, new { id = "RequestForm" })) { @Html.AntiForgeryToken() foreach (var item in ViewBag.q) { <div class="form-group col-md-6"> <label id="@item.ID" class="control-label col-md-3">@item.FieldName</label> <div class="col-md-9"> <input type="text" name="@item.FieldNameEN" class="form-control" value="" /> </div> </div> } <button type="button" class="btn btn-success font" id="btnSaveDarkhastKala">ثبت درخواست کالا</button> <a href="@Url.Action("Index", new { PrsID = @Session["UserName"] })" class="btn btn-info">برگشت به لیست</a> }
حالا فرم بالارو بصورت Ajax ارسال میکنم به شکل زیر:
<script> $(document).ready(function () { $("#btnSaveDarkhastKala").click(function () { var url = '@Url.Action("SaveTest", "RequestCompletions")'; var SendingData = $("#RequestForm").serialize(); alert(SendingData); $.post(url, SendingData, function (ReciviedData) { if (!ReciviedData.Success) { alert(ReciviedData.MessageText); } else { alert("دررخواست با موفقیت ثبت گردید"); } }) }); }); </script>
الان SendingData اطلاعات فرم رو ارسال میکنه ولی سمت سرور نمیدونم چکار کنم؟
قبلا یه ViewModel میساختم که SendingData رو میریختم داخلش ولی الان چون فرم من بصورت داینامیک از دیتابیسه Model نمیتونم بسازم!
سوالم اینه:
1) میشه Model بصورت داینامیک بسازم؟
2) اطلاعات دریافتی از View رو چجوری ذخیره کنم
ساخت ViewModel داینامیک کار ساده ای نیست
ممیتونید به شکل زیر عمل کنید
[HttpPost] public ActionResult SubmitAction() { // This will return an string array of all keys in the form. // NOTE: you specify the keys in form by the name attributes e.g: // <input name="this is the key" value="some value" type="test" /> var keys = Request.Form.AllKeys; // This will return the value for the keys. var value1 = Request.Form.Get(keys[0]); var value2 = Request.Form.Get(keys[1]); }
دستتون درد نکنه همینم کار منو راه انداخت
هیچ کاربری تا کنون از این پست تشکر نکرده است
تاپیک مورد نظر بسته شده و امکان درج پاسخ وجود ندارد
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)