با سلام
ببینید من یه یه اکشنی به صورت زیر دارم
[HttpGet] public ActionResult PollQuestion(int id,string Name="") { PollQuestionRepository bl = new PollQuestionRepository(); if(Name !="") { ViewBag.Name = Name; } if (id != null) { var all = bl.All(id); if (all != null && all.Count > 0) { return View(all); } else { return View(); } } else { return View(); } } [HttpPost] [AjaxOnly] public ActionResult PollQuestion(List<PollQuestion> entity) { var aa = entity; return View(); }
که میاد ویو رو به صورت زیر و درست نشون میده
ببینید من توو بانکم یه جدول PollQuestion دارم که سوالام هست و یه جدول PollOption دارم که جوابام هست من از لیست های خود بانک یعنی مدل اومدم استفاده کردم ویوی من به صورت زیر هست ببینید
@model List<ProjectShop.Models.DomainModels.PollQuestion> @{ ViewBag.Title = @ViewBag.Name != "" ? @ViewBag.Name : "نظرسنجی"; Layout = "~/Views/Shared/_Layout.cshtml"; } @if (Model != null && Model.Count > 0) { using (Ajax.BeginForm("PollQuestion", "Home", new AjaxOptions() { HttpMethod = "POST", OnSuccess = "Success" })) { <div class="col-md-9"> <!--Blog Post--> @for (int i = 0; i < Model.Count; i++) { <div class="row"> <div class="col-md-10"> @Html.HiddenFor(c => Model[i].PollQuestion_Id) @Model[i].PollQuestion_Text @{ if (Model[i].PollOption != null && Model[i].PollOption.Count > 0) { <br /> var PollOption = Model[i].PollOption.ToList(); for (int j = 0; j < PollOption.Count; j++) { @Html.HiddenFor(c => PollOption[j].PollOption_Id) @Html.HiddenFor(c => PollOption[j].PollOption_PollQuestionID) @Html.HiddenFor(c => PollOption[j].PollOption_OptionText) @Html.HiddenFor(c => PollOption[j].PollOption_Votes) @Html.HiddenFor(c => PollOption[j].PollQuestion) @Html.HiddenFor(c => PollOption[j].PollResult) @Html.RadioButton(PollOption[j].PollOption_Id.ToString(), PollOption[j].PollOption_Id)<span>@PollOption[j].PollOption_OptionText</span> <br /> } } } </div> </div> <hr /> } <br> <p> <input type="submit" value="ثبت نظر" class="btn-u"> </p> <!--End Pagination--> </div> } <!--End Pagination--> }
من الان دو تا لیست دام یه لیست PollQuestion که همون سوالام هست و برای هر سوال هم یه لیست دیگه به نام PollOption هست یعنی دو تا لیست تو در تو دارم
همونطور که میبینید از Hiddenfor هم استفاده کدم اما نمیدونم چرا متاسفانه فقط اون لیست بالایی یعنی سوالات رو نشون میده و مقادیر لیست درونی نگه داری نمیشه
دیگه هر راهی بود امتحان کردم نمیدونم ایرادم چیه. توو فرم معمولی توو فرم ایجکسی با کلاس جدید و از مدل استفاده نگردم هر چی توو ذهنم و تو نت دیدم زدم نشد
ممنونم یه راهنمایی کنید
چرا از Ajax استفاده نمیکنید ؟
اینطوری راحتتر میتونید کنترل کنید
خب اینم ایجکسی هست یعنی فرمم ایجکسی هست منظورتون اینه با ajax جی کوئری بنویسم؟
یه مثال از ارسال لیست توو در توو برام میفرستید که با ایجکس سمت کنترولر فرستاده؟
برم این روش رو هم امتحان کنم
بله منظروم Jquery Ajax هست
نمونه ندارم متاسفانه
کلی گشتم اما همش متاسفانه مدل هاشون ثابته مثل این ببینید
https://stackoverflow.com/questions/42551750/sending-complex-object-via-ajax-to-controller
اما من نمیتونم از این استفاده کنم. من مشکلم اینه Model امو چطور توو Jquery بیارم اونم مدل توو در توو
کارم الان گیر همینه
اگه میتونید یه سمپل کوچیک برام درست میکنید از ارسال لیست توو در توو
ممنونم باور کنید من همه ی تلاشمو میکنم آخرین مرحله میام اینجا مطرح میکنم
نه این اصلا به کارم نیومد
لطفا مدلتون رو قرار بدید.
این مدلم
public partial class PollQuestion { public PollQuestion() { this.PollOption = new HashSet<PollOption>(); this.PollResult = new HashSet<PollResult>(); } public int PollQuestion_Id { get; set; } public string PollQuestion_Text { get; set; } public int PollQuestion_PollGroupId { get; set; } public virtual PollGroup PollGroup { get; set; } public virtual ICollection<PollOption> PollOption { get; set; } public virtual ICollection<PollResult> PollResult { get; set; } }
این همون سوالام هست که در دقت کنید داخلش یه PollOption هست که مقادیر هست مثلاً بله یا خیر و ... برای هر سوال
حال از طریق incpect مرورگر کدهای رندر شده را قرار دهید،( کل صفحه)
<!DOCTYPE html> <!--[if IE 8]> <html lang="en" class="ie8"> <![endif]--> <!--[if IE 9]> <html lang="en" class="ie9"> <![endif]--> <!--[if !IE]><!--> <html dir="rtl" lang="en"> <!--<![endif]--> <head> <!-- Meta --> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="description" content=""> <meta name="author" content=""> <script type="text/javascript" src="/Content/assets/plugins/jquery/jquery.min.js"></script> <script src="/Scripts/Noty/jquery.noty.js"></script> <script src="/Scripts/jquery.validate.min.js"></script> <script src="/Scripts/jquery.validate.unobtrusive.min.js"></script> <script src="/Scripts/jquery.unobtrusive-ajax.min.js"></script> <title>آزمایشگاه ژنتیک پزشکی تهران</title> <!-- Meta --> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="description" content=""> <meta name="author" content=""> <!-- Favicon --> <link rel="shortcut icon" href="favicon.ico"> <!-- Web Fonts --> <!-- <link rel='stylesheet' type='text/css' href='//fonts.googleapis.com/css?family=Open+Sans:400,300,600&subset=cyrillic,latin'>--> <!-- CSS Global Compulsory --> <!-- CSS Global Compulsory --> <link rel="stylesheet" href="/Content/assets/plugins/bootstrap/css/bootstrap-rtl.min.css"> <!-- CSS Global Compulsory --> <link rel="stylesheet" href="/Content/assets/css/css-rtl/style-rtl.css"> <!-- CSS Header and Footer --> <link rel="stylesheet" href="/Content/assets/css/css-rtl/headers/header-v5-rtl.css"> <link rel="stylesheet" href="/Content/assets/css/css-rtl/footers/footer-v1-rtl.css"> <!-- CSS Implementing Plugins--> <link rel="stylesheet" href="/Content/assets/plugins/animate.css"> <link rel="stylesheet" href="/Content/assets/plugins/line-icons/line-icons.css"> <link rel="stylesheet" href="/Content/assets/plugins/font-awesome/css/font-awesome.min.css"> <link rel="stylesheet" href="/Content/assets/plugins/fancybox/source/jquery.fancybox.css"> <link rel="stylesheet" href="/Content/assets/plugins/sky-forms-pro/skyforms/css/sky-forms-rtl.css"> <link rel="stylesheet" href="/Content/assets/plugins/sky-forms-pro/skyforms/custom/custom-sky-forms-rtl.css"> <!-- Style Switcher --> <link rel="stylesheet" href="/Content/assets/css/plugins/style-switcher.css"> <!-- CSS Theme --> <link rel="stylesheet" href="/Content/assets/css/css-rtl/theme-colors/default.css" id="style_color"> <link rel="stylesheet" href="/Content/assets/css/css-rtl/theme-skins/dark.css"> <!-- RTL Customization --> <link rel="stylesheet" href="/Content/assets/css/css-rtl/rtl.css"> <!-- CSS Customization --> <link rel="stylesheet" href="/Content/assets/css/css-rtl/custom-rtl.css"> <link rel="stylesheet" href="/Content/assets/css/pages/portfolio-v2.css"> <link rel="stylesheet" href="/Content/assets/css/theme-colors/dark-blue.css"> <link rel="stylesheet" href="/Content/assets/Font.css"> <link rel="stylesheet" href="/Content/assets/plugins/cube-portfolio/cubeportfolio/css/cubeportfolio.min.css"> <link rel="stylesheet" href="/Content/assets/plugins/cube-portfolio/cubeportfolio/custom/custom-cubeportfolio.css"> <link rel="stylesheet" href="/Content/assets/css/theme-colors/blue.css" id="style_color"> <!-- RTL Customization --> <link rel="stylesheet" href="/Content/assets/css/css-rtl/rtl.css"> </head> <body> <div class="wrapper"> <!--=== Header ===--> <div class="header-v5 header-static"> <div class="topbar-v3"> <div class="container"> <div class="row"> <div class="col-sm-6"> <!-- Topbar Navigation --> </div> <div class="col-sm-6"> <ul class="list-inline right-topbar pull-left"> <li> <a>زبان</a> <ul class="language"> <li class="active"> <a href="#">فارسی (FN)<i class="fa fa-check"></i></a> </li> <li><a href="#">انگلیسی (EN)</a></li> </ul> </li> <li><a href="/Home/RegisterUser">ثبت نام</a></li> | <li> <li><a href="/Home/Login">ورود</a></li> </ul> </div> </div> </div> </div> <div class="navbar navbar-default mega-menu" role="navigation"> <div class="container"> <!-- Brand and toggle get grouped for better mobile display --> <div class="navbar-header"> <a class="logo" href="/Home/Index"> <img id="logo-header" src="/Content/UploadImages/logo...png" alt="Logo"> </a> </div> <!-- Collect the nav links, forms, and other content for toggling --> <div class="collapse navbar-collapse navbar-responsive-collapse"> <!-- Shopping Cart --> <!-- End Shopping Cart --> <!-- Nav Menu --> <ul class="nav navbar-nav"> <li class="dropdown"> <a href="javascript:void(0);" class="dropdown-toggle" data-toggle="dropdown"> سرمنوووو </a> </li> <li class="dropdown"> <a href="javascript:void(0);" class="dropdown-toggle" data-toggle="dropdown"> sv1 </a> <ul class="dropdown-menu"> <li class="dropdown-submenu"> <a href="/Home/Content/46">سرمنو1</a> <ul class="dropdown-menu"> <li> <a href="/Home/Content3/48">زیر منو</a> </li> </ul> </li> <li> <a href="/Home/Content/47">سرمنو2</a> </li> </ul> </li> <li class="dropdown"> <a href="http://بب "> سر لینک 11 </a> <ul class="dropdown-menu"> <li class="dropdown-submenu"> <a href="/Home/Content/50">زیر1</a> <ul class="dropdown-menu"> <li> <a href="/Home/Content/51">مطلب 1</a> </li> </ul> </li> <li> <a href="/Home/Content1/52">جی</a> </li> </ul> </li> <li class="dropdown"> <a href="http://yahoo.com "> سرمنوی لینک </a> <ul class="dropdown-menu"> <li class="dropdown-submenu"> <a href="http://www.hotmail.com "> لینک 1 </a> <ul class="dropdown-menu"> <li> <a href="http://www.google.com "> لینک 11 </a> </li> <li> <a href="/Home/Content/39">jhg</a> </li> </ul> </li> </ul> </li> <li class="dropdown"> <a href="javascript:void(0);" class="dropdown-toggle" data-toggle="dropdown"> لینک اصلی </a> <ul class="dropdown-menu"> <li> <a href="http://www.google.com "> لینک 1 </a> </li> </ul> </li> <li class="dropdown"> <a class="dropdown-toggle" href="/Home/ConMap/40">ارتباط با ما</a> </li> <li class="dropdown"> <a class="dropdown-toggle" href="/Home/ConMap/43">ارتباط با ما</a> </li> <li class="dropdown"> <a href="/Home/Moshaver">مشاوره اینترنتی</a> </li> <li class="dropdown"> <a href="/Home/Poll">نظرسنجی</a> </li> </ul> <!-- End Nav Menu --> </div> </div> </div> </div> <!--=== End Header ===--> <div class="breadcrumbs"> <div class="container"> <h1 class="pull-left">گروه همکاران</h1> <ul class="pull-right breadcrumb"> <li><a href="/Home/Index">صفحه اصلی</a></li> <li><a href="">گروه همکاران</a></li> </ul> </div><!--/breadcrumbs--> </div> <!--=== Breadcrumbs v1 ===--> <!--=== End Breadcrumbs v1 ===--> <!--=== Blog Posts ===--> <div class="bg-color-light"> <div class="container content-sm"> <div class="row"> <form action="/Home/PollQuestion/1" data-ajax="true" data-ajax-method="POST" data-ajax-success="Success" id="form0" method="post"> <div class="col-md-9"> <!--Blog Post--> <div class="row"> <div class="col-md-10"> <input data-val="true" data-val-number="The field PollQuestion_Id must be a number." data-val-required="The PollQuestion_Id field is required." name="[0].PollQuestion_Id" type="hidden" value="3" /> همکاران نور هستید؟ <br /> <input data-val="true" data-val-number="The field PollOption_Id must be a number." data-val-required="The PollOption_Id field is required." id="PollOption_0__PollOption_Id" name="PollOption[0].PollOption_Id" type="hidden" value="9" /><input data-val="true" data-val-number="The field PollOption_PollQuestionID must be a number." data-val-required="The PollOption_PollQuestionID field is required." id="PollOption_0__PollOption_PollQuestionID" name="PollOption[0].PollOption_PollQuestionID" type="hidden" value="3" /><input id="PollOption_0__PollOption_OptionText" name="PollOption[0].PollOption_OptionText" type="hidden" value="بله" /><input data-val="true" data-val-number="The field PollOption_Votes must be a number." data-val-required="The PollOption_Votes field is required." id="PollOption_0__PollOption_Votes" name="PollOption[0].PollOption_Votes" type="hidden" value="0" /><input id="PollOption_0__PollQuestion" name="PollOption[0].PollQuestion" type="hidden" value="System.Data.Entity.DynamicProxies.PollQuestion_238A22D686A91946F789F5DA053F290E1271402C8C034051333836DE7473799A" /><input id="PollOption_0__PollResult" name="PollOption[0].PollResult" type="hidden" value="System.Collections.Generic.HashSet`1[ProjectShop.Models.DomainModels.PollResult]" /><input name="9" type="radio" value="9" /><span>بله</span> <br /> <input data-val="true" data-val-number="The field PollOption_Id must be a number." data-val-required="The PollOption_Id field is required." id="PollOption_1__PollOption_Id" name="PollOption[1].PollOption_Id" type="hidden" value="10" /><input data-val="true" data-val-number="The field PollOption_PollQuestionID must be a number." data-val-required="The PollOption_PollQuestionID field is required." id="PollOption_1__PollOption_PollQuestionID" name="PollOption[1].PollOption_PollQuestionID" type="hidden" value="3" /><input id="PollOption_1__PollOption_OptionText" name="PollOption[1].PollOption_OptionText" type="hidden" value="خیر" /><input data-val="true" data-val-number="The field PollOption_Votes must be a number." data-val-required="The PollOption_Votes field is required." id="PollOption_1__PollOption_Votes" name="PollOption[1].PollOption_Votes" type="hidden" value="0" /><input id="PollOption_1__PollQuestion" name="PollOption[1].PollQuestion" type="hidden" value="System.Data.Entity.DynamicProxies.PollQuestion_238A22D686A91946F789F5DA053F290E1271402C8C034051333836DE7473799A" /><input id="PollOption_1__PollResult" name="PollOption[1].PollResult" type="hidden" value="System.Collections.Generic.HashSet`1[ProjectShop.Models.DomainModels.PollResult]" /><input name="10" type="radio" value="10" /><span>خیر</span> <br /> <input data-val="true" data-val-number="The field PollOption_Id must be a number." data-val-required="The PollOption_Id field is required." id="PollOption_2__PollOption_Id" name="PollOption[2].PollOption_Id" type="hidden" value="11" /><input data-val="true" data-val-number="The field PollOption_PollQuestionID must be a number." data-val-required="The PollOption_PollQuestionID field is required." id="PollOption_2__PollOption_PollQuestionID" name="PollOption[2].PollOption_PollQuestionID" type="hidden" value="3" /><input id="PollOption_2__PollOption_OptionText" name="PollOption[2].PollOption_OptionText" type="hidden" value="یس" /><input data-val="true" data-val-number="The field PollOption_Votes must be a number." data-val-required="The PollOption_Votes field is required." id="PollOption_2__PollOption_Votes" name="PollOption[2].PollOption_Votes" type="hidden" value="0" /><input id="PollOption_2__PollQuestion" name="PollOption[2].PollQuestion" type="hidden" value="System.Data.Entity.DynamicProxies.PollQuestion_238A22D686A91946F789F5DA053F290E1271402C8C034051333836DE7473799A" /><input id="PollOption_2__PollResult" name="PollOption[2].PollResult" type="hidden" value="System.Collections.Generic.HashSet`1[ProjectShop.Models.DomainModels.PollResult]" /><input name="11" type="radio" value="11" /><span>یس</span> <br /> </div> </div> <hr /> <div class="row"> <div class="col-md-10"> <input data-val="true" data-val-number="The field PollQuestion_Id must be a number." data-val-required="The PollQuestion_Id field is required." name="[1].PollQuestion_Id" type="hidden" value="4" /> سایت خوبه؟ <br /> <input id="PollOption_0__PollOption_Id" name="PollOption[0].PollOption_Id" type="hidden" value="7" /><input id="PollOption_0__PollOption_PollQuestionID" name="PollOption[0].PollOption_PollQuestionID" type="hidden" value="4" /><input id="PollOption_0__PollOption_OptionText" name="PollOption[0].PollOption_OptionText" type="hidden" value="بله" /><input id="PollOption_0__PollOption_Votes" name="PollOption[0].PollOption_Votes" type="hidden" value="0" /><input id="PollOption_0__PollQuestion" name="PollOption[0].PollQuestion" type="hidden" value="System.Data.Entity.DynamicProxies.PollQuestion_238A22D686A91946F789F5DA053F290E1271402C8C034051333836DE7473799A" /><input id="PollOption_0__PollResult" name="PollOption[0].PollResult" type="hidden" value="System.Collections.Generic.HashSet`1[ProjectShop.Models.DomainModels.PollResult]" /><input name="7" type="radio" value="7" /><span>بله</span> <br /> <input id="PollOption_1__PollOption_Id" name="PollOption[1].PollOption_Id" type="hidden" value="8" /><input id="PollOption_1__PollOption_PollQuestionID" name="PollOption[1].PollOption_PollQuestionID" type="hidden" value="4" /><input id="PollOption_1__PollOption_OptionText" name="PollOption[1].PollOption_OptionText" type="hidden" value="خیر" /><input id="PollOption_1__PollOption_Votes" name="PollOption[1].PollOption_Votes" type="hidden" value="0" /><input id="PollOption_1__PollQuestion" name="PollOption[1].PollQuestion" type="hidden" value="System.Data.Entity.DynamicProxies.PollQuestion_238A22D686A91946F789F5DA053F290E1271402C8C034051333836DE7473799A" /><input id="PollOption_1__PollResult" name="PollOption[1].PollResult" type="hidden" value="System.Collections.Generic.HashSet`1[ProjectShop.Models.DomainModels.PollResult]" /><input name="8" type="radio" value="8" /><span>خیر</span> <br /> </div> </div> <hr /> <br> <p> <input type="submit" value="ثبت نظر" class="btn-u"> </p> <!--End Pagination--> </div> </form> <!--End Pagination--> <!-- End Blog All Posts --> <!-- Blog Sidebar --> <div class="col-md-3"> <!-- Blog Newsletter --> <div class="service-block service-block-blue"> <i class="icon-custom icon-color-light rounded-x icon-line icon-diamond"></i> <h2 class="heading-md"></h2> <p> </p> </div> <!-- End Blog Newsletter --> <!-- Latest Links --> <div class="posts margin-bottom-40"> <div class="headline headline-md"><h2>برترین لینک ها</h2></div> </div> <!-- End Latest Links --> <!-- photostream --> <div class="headline-v2"><h2>عکس ها</h2></div> <ul class="list-inline blog-photostream margin-bottom-50"> </ul> <!-- End Photostream --> </div> <!-- End Blog Sidebar --> </div> <!--=== End Blog Posts ===--> <!--=== Footer Version 1 ===--> </div> </div> <div class="footer-v1"> <div class="footer"> <div class="container"> <div class="row"> <!-- About --> <div class="col-md-3 md-margin-bottom-40"> </div><!--/col-md-3--> <!-- End About --> <!-- Latest --> <div class="col-md-3 md-margin-bottom-40"> <div class="posts"> <div class="headline"><h2> آخرین اخبار</h2></div> <ul class="list-unstyled latest-list"> <li> <a href="/Home/MatlabDetail/3">مطلب آخر</a> <small>1396/05/24 </small> </li> <li> <a href="/Home/MatlabDetail/1">سلام</a> <small>1396/05/21 </small> </li> </ul> </div> </div><!--/col-md-3--> <!-- End Latest --> <!-- Link List --> <div class="col-md-3 md-margin-bottom-40"> <div class="headline"><h2> لینک ها</h2></div> <ul class="list-unstyled link-list"> <li><a href=http://www.hotmail.com >ee</a><i class="fa fa-angle-left"></i></li> <li><a href=http://www.yahooooo.com >ggg</a><i class="fa fa-angle-left"></i></li> </ul> </div><!--/col-md-3--> <!-- End Link List --> <!-- Address --> <div class="col-md-3 map-img md-margin-bottom-40"> <div class="headline"><h2>تماس با ما</h2></div> <address class="md-margin-bottom-40"> </address> </div><!--/col-md-3--> <!-- End Address --> </div> </div> </div><!--/footer--> <div class="copyright"> <div class="container"> <div class="row"> <div class="col-md-9"> <p> طراحی و توسعه ایده سین | <a href="http://kimasys.ir/">kimasys.ir</a> </p> </div> <!-- Social Links --> <div class="col-md-3"> <ul class="footer-socials list-inline"> <li> <a href="http://www.twiiter.com" class="tooltips" data-toggle="tooltip" data-placement="top" title="" data-original-title="فیس بوک"> <i class="fa fa-facebook"></i> </a> </li> <li> <a href="http://www.instagram" class="tooltips" data-toggle="tooltip" data-placement="top" title="" data-original-title="اینستاگرام"> <i class="fa fa-instagram"></i> </a> </li> <li> <a href="http://www.telegram.com" class="tooltips" data-toggle="tooltip" data-placement="top" title="" data-original-title="تلگرام"> <i class="fa fa-telegram"></i> </a> </li> <li> <a href="http://sss" class="tooltips" data-toggle="tooltip" data-placement="top" title="" data-original-title="تلگرام"> <i class="fa fa-telegram"></i> </a> </li> <li> <a href="http://sss" class="tooltips" data-toggle="tooltip" data-placement="top" title="" data-original-title="توییتر"> <i class="fa fa-twitter"></i> </a> </li> </ul> </div> <!-- End Social Links --> </div> </div> </div><!--/copyright--> </div> <!--=== End Footer Version 1 ===--> </div><!--/wrapper--> <script type="text/javascript" src="/Content/assets/plugins/jquery/jquery-migrate.min.js"></script> <script src="/Scripts/jquery.unobtrusive-ajax.min.js"></script> <script type="text/javascript" src="/Content/assets/plugins/bootstrap/js/bootstrap.min.js"></script> <!-- JS Implementing Plugins --> <script type="text/javascript" src="/Content/assets/plugins/back-to-top.js"></script> <script type="text/javascript" src="/Content/assets/plugins/smoothScroll.js"></script> <script type="text/javascript" src="/Content/assets/plugins/jquery.mixitup.min.js"></script> <script type="text/javascript" src="/Content/assets/plugins/jquery.parallax.js"></script> <script type="text/javascript" src="/Content/assets/plugins/parallax-slider/js/modernizr.js"></script> <script type="text/javascript" src="/Content/assets/plugins/parallax-slider/js/jquery.cslider.js"></script> <script type="text/javascript" src="/Content/assets/plugins/fancybox/source/jquery.fancybox.pack.js"></script> <script type="text/javascript" src="/Content/assets/plugins/owl-carousel/owl-carousel/owl.carousel.js"></script> <script src="/Content/assets/plugins/scrollbar/js/jquery.mCustomScrollbar.concat.min.js"></script> <!-- JS Customization --> <script type="text/javascript" src="/Content/assets/js/custom.js"></script> <!-- JS Page Level --> <script type="text/javascript" src="/Content/assets/js/app.js"></script> <script type="text/javascript" src="/Content/assets/js/pages/page_portfolio.js"></script> <script type="text/javascript" src="/Content/assets/js/plugins/parallax-slider.js"></script> <script type="text/javascript" src="/Content/assets/js/plugins/fancy-box.js"></script> <script type="text/javascript" src="/Content/assets/js/plugins/owl-carousel.js"></script> <script src="/Content/assets/js/plugins/style-switcher-rtl.js"></script> <script type="text/javascript"> jQuery(document).ready(function () { App.init(); App.initParallaxBg(); FancyBox.initFancybox(); OwlCarousel.initOwlCarousel(); PortfolioPage.init(); ParallaxSlider.initParallaxSlider(); }); </script> <!-- Visual Studio Browser Link --> <script type="application/json" id="__browserLink_initializationData"> {"appName":"Firefox","requestId":"14ce97aa18ef48dfa49237ca1f1d4bda"} </script> <script type="text/javascript" src="http://localhost:16342/cc794746d63943a0ac01ba7a4f63194b/browserLink" async="async"></script> <!-- End Browser Link --> </body> </html>
منظورتون این قسمته
ببینید این کد
<input data-val="true" data-val-number="The field PollQuestion_Id must be a number." data-val-required="The PollQuestion_Id field is required." name="[0].PollQuestion_Id" type="hidden" value="3" />
میاد کد هر سوال که لیست اولیه هست رو نگه میداره که درست هم هست و لی اینا رو ببینید
<br /> <input data-val="true" data-val-number="The field PollOption_Id must be a number." data-val-required="The PollOption_Id field is required." id="PollOption_0__PollOption_Id" name="PollOption[0].PollOption_Id" type="hidden" value="9" /><input data-val="true" data-val-number="The field PollOption_PollQuestionID must be a number." data-val-required="The PollOption_PollQuestionID field is required." id="PollOption_0__PollOption_PollQuestionID" name="PollOption[0].PollOption_PollQuestionID" type="hidden" value="3" /><input id="PollOption_0__PollOption_OptionText" name="PollOption[0].PollOption_OptionText" type="hidden" value="بله" /><input data-val="true" data-val-number="The field PollOption_Votes must be a number." data-val-required="The PollOption_Votes field is required." id="PollOption_0__PollOption_Votes" name="PollOption[0].PollOption_Votes" type="hidden" value="0" /><input id="PollOption_0__PollQuestion" name="PollOption[0].PollQuestion" type="hidden" value="System.Data.Entity.DynamicProxies.PollQuestion_238A22D686A91946F789F5DA053F290E1271402C8C034051333836DE7473799A" /><input id="PollOption_0__PollResult" name="PollOption[0].PollResult" type="hidden" value="System.Collections.Generic.HashSet`1[ProjectShop.Models.DomainModels.PollResult]" /><input name="9" type="radio" value="9" /><span>بله</span> <br /> <input data-val="true" data-val-number="The field PollOption_Id must be a number." data-val-required="The PollOption_Id field is required." id="PollOption_1__PollOption_Id" name="PollOption[1].PollOption_Id" type="hidden" value="10" /><input data-val="true" data-val-number="The field PollOption_PollQuestionID must be a number." data-val-required="The PollOption_PollQuestionID field is required." id="PollOption_1__PollOption_PollQuestionID" name="PollOption[1].PollOption_PollQuestionID" type="hidden" value="3" /><input id="PollOption_1__PollOption_OptionText" name="PollOption[1].PollOption_OptionText" type="hidden" value="خیر" /><input data-val="true" data-val-number="The field PollOption_Votes must be a number." data-val-required="The PollOption_Votes field is required." id="PollOption_1__PollOption_Votes" name="PollOption[1].PollOption_Votes" type="hidden" value="0" /><input id="PollOption_1__PollQuestion" name="PollOption[1].PollQuestion" type="hidden" value="System.Data.Entity.DynamicProxies.PollQuestion_238A22D686A91946F789F5DA053F290E1271402C8C034051333836DE7473799A" /><input id="PollOption_1__PollResult" name="PollOption[1].PollResult" type="hidden" value="System.Collections.Generic.HashSet`1[ProjectShop.Models.DomainModels.PollResult]" /><input name="10" type="radio" value="10" /><span>خیر</span> <br /> <input data-val="true" data-val-number="The field PollOption_Id must be a number." data-val-required="The PollOption_Id field is required." id="PollOption_2__PollOption_Id" name="PollOption[2].PollOption_Id" type="hidden" value="11" /><input data-val="true" data-val-number="The field PollOption_PollQuestionID must be a number." data-val-required="The PollOption_PollQuestionID field is required." id="PollOption_2__PollOption_PollQuestionID" name="PollOption[2].PollOption_PollQuestionID" type="hidden" value="3" /><input id="PollOption_2__PollOption_OptionText" name="PollOption[2].PollOption_OptionText" type="hidden" value="یس" /><input data-val="true" data-val-number="The field PollOption_Votes must be a number." data-val-required="The PollOption_Votes field is required." id="PollOption_2__PollOption_Votes" name="PollOption[2].PollOption_Votes" type="hidden" value="0" /><input id="PollOption_2__PollQuestion" name="PollOption[2].PollQuestion" type="hidden" value="System.Data.Entity.DynamicProxies.PollQuestion_238A22D686A91946F789F5DA053F290E1271402C8C034051333836DE7473799A" /><input id="PollOption_2__PollResult" name="PollOption[2].PollResult" type="hidden" value="System.Collections.Generic.HashSet`1[ProjectShop.Models.DomainModels.PollResult]" /><input name="11" type="radio" value="11" /><span>یس</span> <br />
برای اون لیست PollOption ها اینو میده
id="PollOption_0__PollOption_Id" name="PollOption[0].PollOption_Id" type="hidden" value="9"
نمیدونم چیکار کنم ببینید میتونید کمکی کنید
آقای علیزاده من یه مرحله جلو رفتم الان لیست زیری رو هم میاره فقط value اشو نمیدونم چی بزارم ببینید الان ویوو رو ببینید
<input id="[@i]_PollOption_[@j]__PollOption_Id" name="[@i].PollOption[@j].PollOption_Id" type="hidden" value="[@i]_PollOption_[@j]__PollOption_Id" />
فقط value اشو نمیدونم چی بزارم ؟
و اینکه میخوام یه radio button به این text ام بایند بشه
if (Model[i].PollOption != null && Model[i].PollOption.Count > 0) { <br /> var PollOption = Model[i].PollOption.ToList(); for (int j = 0; j < PollOption.Count; j++) { <input id="[@i]_PollOption_[@j]__PollOption_Id" name="[@i].PollOption[@j].PollOption_Id" type="hidden" value="[@i]_PollOption_[@j]__PollOption_Id" /> <input id="[@i]_PollOption_[@j]__PollOption_PollQuestionID" name="[@i].PollOption[@j].PollOption_PollQuestionID" type="hidden" value="[@i].PollOption[@j].PollOption_PollQuestionID" /> <input id="[@i]_PollOption_[@j]__PollOption_OptionText" name="[@i].PollOption[@j].PollOption_OptionText" type="hidden" value="[@i]_PollOption[@j].PollOption_OptionText" /> @Html.RadioButton(PollOption[j].PollOption_Id.ToString(), PollOption[j].PollOption_Id)<span>@PollOption[j].PollOption_OptionText</span> <br /> } }
ابتدا یک viewmodel ایجاد کنید و جای گزین کلاس خود کنید:
public class CreatePollQuestion { public int PollQuestion_Id { get; set; } public string PollQuestion_Text { get; set; } public int PollQuestion_PollGroupId { get; set; } public PollGroup PollGroup { get; set; } public List<PollOption> PollOption { get; set; } public List<PollResult> PollResult { get; set; } }
مثال مدل بالا .
و این که مقدار value های element ها صحیح نمی باشد بهتر است به جای استفاده از Html Helper ها از کد html استفاده کنید.
مثال:
for (var i = 0; i < Model.Socials.Count; i++) { <input id="netId" data-netid="@Model.SocialNetworks[i].Id" type="hidden" name="SocialNetworks[@i].Id" value="@Model.SocialNetworks[i].Id"/> }
<input type="radio" name="PollOption[j].PollOption_Id" value="PollOption[j].PollOption_Id" /> <br/>@PollOption[j].PollOption_OptionText
آقای علیزاده اولا اینکه model مشکلی نداره یعنی من یه کلاس ساده و مدل ساده نوشتم که virtual هم نبود باز همون مسائل و مشکلات بود
در ثانی شما دقت نکردید من Model ام یک لیست هست اما چیزی که شما نوشتید یعنی Model اتون لیست نیست من چون Model ام لیست هست و داخل هر آیتم اون باز یه لیست دیگه دارم مجبورم اینجوری بنویسم که جواب نمیده
for (var j = 0; i < Model[i].lstt.Count; i++) { <input id="netId" data-netid="@Model[i].lstt[j].Id" type="hidden" name="lstt[@j].Id" value="@Model.lstt[j].Id" /> }
که چون دو تا index داره قبول نمیکنه
ببینید من خودم زحمتو کشیدم خب ، جوابم به صورت نصفه و نیمه میده شما فقط به من بگو توو این کد من value اشو چی بدم؟
و RadionButton رو چیکار کنم؟
یعنی توو input های زیری من توو value چی بنویسم؟
for (int j = 0; j < PollOption.Count; j++) { <input id="[@i]_PollOption_[@j]__PollOption_Id" name="[@i].PollOption[@j].PollOption_Id" type="hidden" value="[@i]_PollOption_[@j]__PollOption_Id" /> <input id="[@i]_PollOption_[@j]__PollOption_PollQuestionID" name="[@i].PollOption[@j].PollOption_PollQuestionID" type="hidden" value="[@i].PollOption[@j].PollOption_PollQuestionID" /> <input id="[@i]_PollOption_[@j]__PollOption_OptionText" name="[@i].PollOption[@j].PollOption_OptionText" type="hidden" value="[@i]_PollOption[@j].PollOption_OptionText" /> @Html.RadioButton(PollOption[j].PollOption_Id.ToString(), PollOption[j].PollOption_Id)<span>@PollOption[j].PollOption_OptionText</span> <br /> }
شما مثالی میزنید دو تا لیست باشه یعنی Model[i] و داخلش یه لیست دیگه MOdel[i].Socials[j]
انشاله این قسمت نظرسنجی تموم بشه من راحت بشم
متاسفانه کد شما اصلا خوانایی لازمو ندارم و گیچ کنندست،
علت نادرست بودن value شما (که به شکل زیر است) شما در value نوع داده را قرار دادید به جای مقدار کدهاتونو trace کنید تا مشکل پیدا بشه.
value="System.Data.Entity.DynamicProxies.PollQuestion_238A22D686A91946F789F5DA053F290E1271402C8C034051333836DE7473799A"
نمیخوام بگم کدهام بی اشکال هست ولی شما یه مثال از همین لیست توو در توو نمیتونید بزارید ؟
خب من اول توو For زدم نشد incept گرفتم اونی که درست بود رو برداشتم و دستی input درست کردم شما اصلا کد منو ولش کنید خودتون یه مثال 2 دقیقه ای نمیتونید درست که توو اکشن HttpGet یه لیست بگیره که داخلش یه لیست دیگه باشه و توو HttpPost همین لیست رو برگردونید یعنی جوری که هم لیست بالایی و هم لیست پایینی بیاد(باور کنید کار گیره و هرچی میزنمم میشه)
ممنونم
آقای علیزاده مقادیر هم اکی شد فقط الان مشکلم اینکه radio درست کار نمیکنه
این کد رو ببینید
for (int j = 0; j < PollOption.Count; j++) { <input id="[@i]_PollOption_[@j]__PollOption_Id" name="[@i].PollOption[@j].PollOption_Id" type="hidden" value="@PollOption[j].PollOption_Id" /> <input id="[@i]_PollOption_[@j]__PollOption_PollQuestionID" name="[@i].PollOption[@j].PollOption_PollQuestionID" type="hidden" value="@PollOption[j].PollOption_PollQuestionID" /> <input id="[@i]_PollOption_[@j]__PollOption_OptionText" name="[@i].PollOption[@j].PollOption_OptionText" type="hidden" value="@PollOption[j].PollOption_OptionText" /> <input id="[@i]_PollOption_[@j]__PollOption_Selectt" name="[@i].PollOption[@j].PollOption_Selectt" type="hidden" value="@PollOption[j].PollOption_Selectt" /> @Html.RadioButtonFor(c => PollOption[j].PollOption_Selectt, PollOption[j].PollOption_Selectt)<span>@PollOption[j].PollOption_OptionText</span>
الان فقط گیر کارم فقط radio هست که متاسفانه اصلا true نمیشه یعنی انتخابم میکنم توو اکشن به من false نشون میده، در ضمن من در بانک به طور پیش فرض false میزارم
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)