ASP.NET ajax函数在onchange事件之后不起作用
ASP:NET ajax function does not work after onchange event
我想通过使用ajax函数来显示下拉列表的选定索引的值。它不起作用。我试着使用控制台调试它,我看到了错误500 (Internal Server Error)
是什么导致了这个问题?实施低于
Ajax函数:
function showDdlValue(ddl) {
var value = ddl.value;
$.ajax({
type: "POST",
url: "AdminPanel.aspx/getData",
data: '{color: "' + value + '" }',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: OnSuccess,
failure: function (response) {
alert(response.d);
}
});
}
function OnSuccess(response) {
alert(response.d);
}
Html:
<ajaxToolkit:TabPanel ID="TabPanel5" runat="server">
<HeaderTemplate>Show Shoes</HeaderTemplate>
<ContentTemplate runat="server">
<asp:Repeater ID="shoeRepeater" OnItemDataBound="shoeRepeater_ItemDataBound" runat="server">
<HeaderTemplate></HeaderTemplate>
<ItemTemplate>
<table border="1" style="border-color:#ff9900; width:400px; font-weight:bold; font-family:'Oswald', Arial, sans-serif;">
<tr>
<td rowspan="6" style="width:150px; height:150px;">
<image src="shoeImages/<%#DataBinder.Eval(Container.DataItem,"ImagePath") %>"></image>
</td>
</tr>
<tr>
<td>
<%#DataBinder.Eval(Container.DataItem,"BrandName") %> <%#DataBinder.Eval(Container.DataItem,"ModelName") %>
</td>
</tr>
<tr>
<td>
Price: $<%#DataBinder.Eval(Container.DataItem,"Price") %>
</td>
</tr>
<tr>
<td>
Size: <%#DataBinder.Eval(Container.DataItem,"Size") %>
</td>
</tr>
<tr>
<td>
Color:<asp:DropDownList ID="colorList1" onchange="showDdlValue(this)" runat="server">
</asp:DropDownList>
</td>
</tr>
<tr>
<td>
Quantity: <%#DataBinder.Eval(Container.DataItem,"Quantity") %>
</td>
</tr>
</table>
</ItemTemplate>
<FooterTemplate></FooterTemplate>
</asp:Repeater>
</ContentTemplate>
</ajaxToolkit:TabPanel>
Web方法:
[System.Web.Services.WebMethod]
private String getData(String color)
{
return "Hello " + color;
}
将Web方法的访问说明符更改为public
。当我们将其设置为private
时,它是不可访问的
function showDdlValue(ddl) {
var value = ddl.value;
$.ajax({
type: "POST",
url: "AdminPanel.aspx/getData",
data: {'color': value },
success: OnSuccess,
failure: function (response) {
alert(response);
}
});
}
function OnSuccess(response) {
alert(response);
}
WEB方法
[System.Web.Services.WebMethod]
public String getData(String color)
{
return "Hello " + color;
}
试试这个
相关文章:
- 在一个“事件”之后触发一个事件;喜欢“;
- 在on.change事件之后运行函数
- addEvent()传奇事件之后的当前最佳实践是什么
- Javascript:在每个onmouseover事件之后执行2个函数
- 可以使 jquery 点击事件在所有其他点击事件之后执行
- 在两个元素的 onrender 事件之后执行函数
- 如何在每次onlick事件之后调用diffect函数
- 是否可以在更改事件之后立即检测到 onclick 事件
- 将twitter引导程序popover设置为在某个事件之后隐藏,然后在另一个事件之后显示
- 在 jQuery / Javascript 中的 bind() 事件之后执行条件
- 在不相关的事件之后重新绑定 .toggle() 事件
- 如何在当前事件之后调用先前绑定的事件
- AngularJS uib日期选择器没有'在uib选项卡中,不要在第一次打开/关闭事件之后显示日历
- 在标记事件之后使用jquery
- 在回调和事件之后调用方法
- 指令中ngChange事件之后的控制器函数
- 在每个事件之后创建目录
- JQuery Mobile Slider在事件之后返回空值
- jQuery:如何将函数绑定到mouseup事件之后立即发生的某个事件
- $watch仅在特定事件之后才查看属性