无法使用ajax发送下拉列表值
本文关键字:下拉列表 ajax | 更新日期: 2023-09-27 18:18:52
在应用程序中,我使用ajax将数据发送到后端,像这样
$.ajax({
type: "POST",
url: "ApplicationDetails.aspx/GetMessageFromWebPage",
data: {
title: $('#Content_Monitoring_Statistics_dropdownfilter option:selected').val()
},
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(data) {google.setOnLoadCallback(drawChart(data));}
});
下面是我的下拉列表,它的值我想发送到后端
<asp:dropdownlist id="dropdownfilter" runat="server" >
<asp:listitem text="Hits for last 24 hours" selected="True" value="last24hours"></asp:listitem>
<asp:listitem text="Hits for last 7 days" value="last7days"></asp:listitem>
<asp:listitem text="Hits for last year" value="lastyear"></asp:listitem>
</asp:dropdownlist>
但是它没有将数据发送回服务器端。当我删除数据,它工作得很好,但与数据它不工作
您需要以Json格式发送数据,因此简单地发送数据将不起作用,您需要将数据转换为Json。使用JSON。像这样字符串化
data:JSON.stringify({
title: $("#MainContent_ddlTest option:selected").val(),
}),
我刚刚创建的对象
var selectedFilter = {};
selectedFilter.title = $("#Content_Monitoring_Statistics_dropdownfilter option:selected").val();
,将其传递给如下数据
data: JSON.stringify(selectedFilter)
要将下拉值参数传递给AJAX调用,您可以执行:
title: function () { return $("#Content_Monitoring_Statistics_dropdownfilter").val(); }