如何使用ajax从列表框中发送选定的值

时间:2013-02-15 13:10:31

标签: javascript jquery asp.net asp.net-mvc asp.net-mvc-3

我需要使用mvc中的ajax从列表框中发送多个选定的数据。我得到了选定的数据。我不知道如何将数据ajax发送到控制器。我的代码如下:

var Students= [];

            var x = document.getElementById("ListBox");
            for (var i = 0; i < x.options.length; i++) {
                if (x.options[i].selected == true) {
                    Students.push(x.options[i].text)
                }
            }


 $.ajax({
                url: '',
                type: 'POST',
                data: { id:studenid, class: class,  Students: Students},
                dataType: 'json',
                success: function (data) {

                }
            }); // id:studenid, class:classs values are send it properly how to add the students?

4 个答案:

答案 0 :(得分:0)

您的url:''字段为空。您需要在其中添加一些URL,您已编写了可以接受数据的服务器端代码。

当然,我猜你想发送data:{Student:Students}而不是data:{User:Users}。最好是data:{Student:Students}

答案 1 :(得分:0)

//发送宽度参数名称

   $.ajax({
      type: "POST",
      url: "Default.aspx/GetDate",
      data: { paramName: Students},
      contentType: "application/json; charset=utf-8",
      dataType: "json",
      success: function(msg) {

      }
    });



  //Get value
    [WebMethod]
    public static string GetValue(string paramName)
      {

      }

在通用处理程序中

//Send
 $.ajax({
          type: "POST",
          url:'/MyHandler.ashx?students=Students,
          contentType: "application/json; charset=utf-8",
          dataType: "json",
          success: function(msg) {

          }
        });

//Get

public void ProcessRequest(HttpContext context)
{
    string students= (string)context.Request["students"];
}

答案 2 :(得分:0)

var Students= [];

            var x = document.getElementById("ListBox");
            for (var i = 0; i < x.options.length; i++) {
                if (x.options[i].selected == true) {
                    Students.push(x.options[i].text)
                }
            }
$.ajax({
   type: "POST",
   data: {StudentList:Students},
   url: "index.aspx",
   success: function(msg){
     alert(msg);
   }
});

答案 3 :(得分:0)

请确认您传递给控制器​​的“学生”对象的数据类型。

尝试使用Array数据类型

Public ActionResult SendData(string id, string class,Array  Students)
{

}

如果它不起作用,则将Javascript数组转换为带有分隔符(,)的字符串数组,并使用下面的

Public ActionResult SendData(string id, string class,string Students)
{

}

这会对你有所帮助。 感谢。