Javascript 使用ajax调用.net、C在客户端获取服务器端字符串值#
我正在创建一个.net应用程序。我只是想在ajax调用中得到这个“Hi”字符串。我需要做什么?现在我一直都在变得不确定。没有别的了 我的客户端脚本看起来像blowJavascript 使用ajax调用.net、C在客户端获取服务器端字符串值#,javascript,c#,asp.net,ajax,Javascript,C#,Asp.net,Ajax,我正在创建一个.net应用程序。我只是想在ajax调用中得到这个“Hi”字符串。我需要做什么?现在我一直都在变得不确定。没有别的了 我的客户端脚本看起来像blow <script type = "text/javascript"> $(document).ready(function () { $('.cart').click(function () { var id = $(this).attr('id');
<script type = "text/javascript">
$(document).ready(function () {
$('.cart').click(function () {
var id = $(this).attr('id');
CallAddCart(id);
});
});
function CallAddCart(ItemId) {
$.ajax({
type: "POST",
url: "SearchParts.aspx/AddShopCart",
data: '{ItemId: "' + ItemId + '"}',
contenttype: "application/json; charset=utf-8",
datatype: "json",
success: function (data) {
OnSuccess(data);
},
failure: function (response) {
alert(response.d);
}
});
}
function OnSuccess(response) {
alert('On sucess' + response);
alert(response);
}
</script>
更新:
问题解决了
这是导致这些问题的一个小错误。问题在于“contenttype”和“datatype”。这两种类型的字符都是“t”,应该是大写字母。ie“contentType”和“dataType”:)现在可以获取Hi:)我建议以JSON类型返回值
[WebMethod()]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public static string AddShopCart(string ItemId)
{
var result = new { d = "Hi" };
return JsonConvert.SerializeObject(result);
}
在Javascript中
success: function (data) {
OnSuccess(data.d);
}
success: function (data) {
OnSuccess(data.d);
}
我建议以JSON类型返回值
[WebMethod()]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public static string AddShopCart(string ItemId)
{
var result = new { d = "Hi" };
return JsonConvert.SerializeObject(result);
}
在Javascript中
success: function (data) {
OnSuccess(data.d);
}
success: function (data) {
OnSuccess(data.d);
}
移除它<代码>[ScriptMethod(ResponseFormat=ResponseFormat.Json)]
在Javascript中
success: function (data) {
OnSuccess(data.d);
}
success: function (data) {
OnSuccess(data.d);
}
学分:
移除它<代码>[ScriptMethod(ResponseFormat=ResponseFormat.Json)]
在Javascript中
success: function (data) {
OnSuccess(data.d);
}
success: function (data) {
OnSuccess(data.d);
}
信用证:区分大小写,导致问题。在下面的脚本中,我使用正确的用法进行了更新 以前是“内容类型”和“数据类型”。现在更改为contentType和dataType
<script type = "text/javascript">
$(document).ready(function () {
$('.cart').click(function () {
var id = $(this).attr('id');
CallAddCart(id);
});
});
function CallAddCart(ItemId) {
$.ajax({
type: "POST",
url: "SearchParts.aspx/AddShopCart",
data: '{ItemId: "' + ItemId + '"}',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
OnSuccess(data);
},
failure: function (response) {
alert(response.d);
}
});
}
function OnSuccess(response) {
alert('On sucess' + response);
alert(response);
}
</script>
$(文档).ready(函数(){
$('.cart')。单击(函数(){
var id=$(this.attr('id');
CallAddCart(id);
});
});
函数CallAddCart(ItemId){
$.ajax({
类型:“POST”,
url:“SearchParts.aspx/AddShopCart”,
数据:“{ItemId:”+ItemId+“}”,
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
成功:功能(数据){
OnSuccess(数据);
},
故障:功能(响应){
警报(response.d);
}
});
}
函数OnSuccess(响应){
警报(“成功时”+响应);
警报(响应);
}
导致问题的大小写敏感。在下面的脚本中,我使用正确的用法进行了更新
以前是“内容类型”和“数据类型”。现在更改为contentType和dataType
<script type = "text/javascript">
$(document).ready(function () {
$('.cart').click(function () {
var id = $(this).attr('id');
CallAddCart(id);
});
});
function CallAddCart(ItemId) {
$.ajax({
type: "POST",
url: "SearchParts.aspx/AddShopCart",
data: '{ItemId: "' + ItemId + '"}',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
OnSuccess(data);
},
failure: function (response) {
alert(response.d);
}
});
}
function OnSuccess(response) {
alert('On sucess' + response);
alert(response);
}
</script>
$(文档).ready(函数(){
$('.cart')。单击(函数(){
var id=$(this.attr('id');
CallAddCart(id);
});
});
函数CallAddCart(ItemId){
$.ajax({
类型:“POST”,
url:“SearchParts.aspx/AddShopCart”,
数据:“{ItemId:”+ItemId+“}”,
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
成功:功能(数据){
OnSuccess(数据);
},
故障:功能(响应){
警报(response.d);
}
});
}
函数OnSuccess(响应){
警报(“成功时”+响应);
警报(响应);
}
尝试更改此部分:公共静态字符串AddShopCart(string ItemId){return string.Format(“Hi”)}好的,我会检查it@RickBronger我改了。但现在它返回html内容。我是否需要在ajax On Success函数中更改某些内容?尝试更改此部分:公共静态字符串AddShopCart(string ItemId){return string.Format(“Hi”)}好的,我会检查it@RickBronger我改了。但现在它返回html内容。我是否需要修改ajax On Success函数中的某些内容?该函数AddShopCart的返回类型如何?另外,JsonConvert未找到我得到的错误我需要使用任何名称空间吗?关于返回值,非常抱歉。它应该是“returnnewJavaScriptSerializer().Serialize(result)”,返回类型为string@NithinPaul@NithinPaul请参见codeplex-->中的示例现在当我检查调试器时,我可以看到未捕获的TypeError:无法读取未定义的属性“d”变量名“data”未定义?该函数的返回类型AddShopCart如何?另外,JsonConvert未找到我得到的错误我需要使用任何名称空间吗?关于返回值,非常抱歉。它应该是“returnnewJavaScriptSerializer().Serialize(result)”,返回类型为string@NithinPaul@NithinPaul请参阅codeplex-->中的示例现在,当我检查调试器时,我可以看到未捕获的TypeError:无法读取未定义的属性“d”变量名“data”未定义?结果是相同的:(哦,伙计,这是导致这些问题的一个小错误。问题是“contenttype”和“datatype”。问题是类型的“t”应该是大写的。:)现在它能够得到Hi:)好的,这是一个使用Ajax进行编码的案例研究:)结果是一样的:(哦,伙计,这是一个小错误,导致了这些问题。问题是“contenttype”和“datatype”。问题是类型的“t”这应该是大写的。:)现在它可以得到Hi:)好的,这是一个关于使用Ajax编码的案例研究:)