Javascript 需要编写一个Jquery来获取所有Selectlist选项值,将它们存储在一个数组中,并将它们发布到一个Action方法

Javascript 需要编写一个Jquery来获取所有Selectlist选项值,将它们存储在一个数组中,并将它们发布到一个Action方法,javascript,jquery,asp.net-mvc,Javascript,Jquery,Asp.net Mvc,需要帮助来编写一个Jquery,它获取所有Selectlist选项数据值并将它们存储在数组/集合中。然后,这个集合将通过Ajax调用发送给一个Action方法,Action方法将返回一个json对象/集合,我将把这个对象传递给为onsuccess指定的函数 由于某些原因,在服务器上,Action方法没有收到任何数据。但是,当我使用调试器检查javascript时,数组arr被填充 public JsonResult GetPartPrice(int[] arr) { Li

需要帮助来编写一个Jquery,它获取所有Selectlist选项数据值并将它们存储在数组/集合中。然后,这个集合将通过Ajax调用发送给一个Action方法,Action方法将返回一个json对象/集合,我将把这个对象传递给为onsuccess指定的函数

由于某些原因,在服务器上,Action方法没有收到任何数据。但是,当我使用调试器检查javascript时,数组arr被填充

     public JsonResult GetPartPrice(int[] arr)
 {

     List<pidandprice> PidPriceList = new List<pidandprice>();

     foreach (var pid in arr.Where(x => x != null ))
     {
         var Product = context.Products.First(x => x.ProductID == pid);
         PidPriceList.Add(new pidandprice() { PartID = pid, Price = Product.ListPrice });
     }


      return Json(PidPriceList.Select(m => new {partid = m.PartID, price = m.Price}) );



}








<script type="text/javascript">


$(document).ready(function () {
    var arr = new Array();
    $('select option').each(function () {
        arr.push($(this).val());
    });






    $.ajax({
        type: "POST",
        url: "http://localhost:50913/Customise/GetPartPrice",
        data: arr,
        success: function (data) { OnSuccess(data) }

    });




});


function OnSuccess(data) {

    alert(data.join(', '));
    //This is where to write code to append
    //all option names text with price difference

};
这是免费的:


对于您的ajax,您可能希望使用$.post、$.get或$.ajax

我们想帮助您解决一个具体问题。阅读jQuery文档将有助于jQuery.com。然后尝试一下,当你的代码中出现错误时问问题。我了解Jquery语法和所有函数,当我看到它们时,我就知道了。但是我不能像那样记住它们,我可能会浪费几个小时去挑选正确的语法并在firebug中尝试代码,或者我可以从一个工作示例中学习,这会更简单、更有效。Stackoverflow很漂亮,因为它可以节省您的时间,而不仅仅是帮您解决问题。我想在这里帮助您。这就是我要做的。我不记得所有的jQuery函数,但是我在旁边放了一个备忘,以帮助我了解jquery1.6的备忘