【发布时间】:2017-12-06 21:22:20
【问题描述】:
当我当时向服务器方法提交 ajax 数据时,会出现 500 个内部错误,而如果我当时在没有数据的情况下调用相同的 ajax 方法,它工作得很好。我真的很困惑 ajax 数据将如何发送到服务器方法。
这是我的代码
<asp:ComboBox ID="dropdwn_consignor" runat="server" onfocusout="blurFunction()" ></asp:ComboBox>
<script>
function blurFunction() {
var c = $find("<%=dropdwn_consignor.ClientID %>");
$.ajax({
type: "POST",
url: "Booking123.aspx/GetCnorGSTNo",
data: "{ TinNo1: '"+ c.get_textBoxControl().value +"'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
async: "true",
cache: "false"
});
}
</script>
[WebMethod]
public static void GetCnorGSTNo(string Param1)
{
// here is the code
}
请帮我解决这个问题。
谢谢。
【问题讨论】:
-
单步执行你的代码,你会看到它抛出了什么错误(500 是内部错误,所以它在你的 c# 中失败了)。如果您不知道如何调试,可以尝试查看您的事件日志。如果您不知道该怎么做,请尝试在没有 ajax 的情况下发布您的表单,页面将显示您的错误 - 如果您删除了友好的错误页面
-
如果您收到 500 错误,则问题出在服务器上,因此我们实际上需要查看
// here is the code部分。另请注意,您的参数名为Param1,而不是TinNo1,您可以将对象直接交给jQuery 进行编码;无需将丑陋的类似 JSON 的字符串拼凑在一起 -
@RoryMcCrossan 首先你的感觉太糟糕了。我已经告诉你,调试点没有出现在方法上,那么你为什么要查看代码。呵呵。首先仔细阅读问题,然后发表评论,否则不需要给出。了解。
-
您的问题中没有任何内容表明您已经调试了服务器端代码。
标签: javascript c# jquery asp.net ajax