当发送ajax数据到asp.net服务器端方法时获取500内部服务器错误c#

当发送ajax数据到asp.net服务器端方法时获取500内部服务器错误c#

问题描述:

当我向服务器方法提交ajax数据时500内部错误来了,而如果我没有数据调用相同的ajax方法那时它的工作非常完美。我真的很困惑,ajax数据将如何发送到服务器方法。当发送ajax数据到asp.net服务器端方法时获取500内部服务器错误c#

这里是我的代码

<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 
} 

请帮我解决这个问题。

谢谢。

+0

一步通过您的代码,你会看到它抛出了什么错误(500是内部错误,所以它在你的C#中是失败的东西)。如果你不知道如何调试,你可以尝试查看你的事件日志。如果你不知道怎么做,那就试着在没有Ajax的情况下发布你的表单,页面会显示你的错误 - 如果你删除了友好的错误页面 – Pete

+0

如果你收到500错误,问题出现在服务器上,那么这是'//这里是我们实际需要看到的代码部分。另外请注意,您的参数名为'Param1',而不是'TinNo1',您可以直接将对象赋予jQuery进行编码;没有必要一起破解一个丑陋的类似JSON的字符串 –

+0

@RoryMcCrossan首先你的感觉太糟糕了。我已经告诉过你,调试点并没有进入方法,那么你为什么要看代码。呵呵呵。首先仔细阅读问题然后给予评论,否则不需要给予。理解。 – karan

检查参数名:

GetCnorGSTNo()拥有的 “参数1” 而不是 “TinNo1” 的字符串参数

尝试:

data: JSON.stringify({ 
    Param1: c.get_textBoxControl().value 
}), 
+1

'data:{Param1:c.get_textBoxControl()。value}'会工作 - 不需要过度复杂化。 –

+0

谢谢。 @JAck和Rory McCrossan – karan