AJAX 调用:无效的 Web 服务调用,缺少参数值
AJAX call: Invalid web service call, missing value for parameter
我的 ajax 调用失败并显示有问题的消息。
[WebMethod(EnableSession = true)]
public static string UpdateTotalPrice(List<TicketPriceAjax> jsonTickets)
{
// some server-side processing
return "a string value";
}
我试图传递的对象
public class TicketPriceAjax
{
public string Fullname { get; set; }
public string Price { get; set; }
public string TicketDescription { get; set; }
}
我的JavaScript在更改事件中被调用
$("select.combobox").change(function(e) {
var ticketsArray = GetTicketsArray();
postTotalPrice(ticketsArray);
});
function GetTicketsArray() {
var tickets = {};
var prices = [];
tickets.prices = prices;
$("#divFullNames div.row").each(function () {
var price = {
"Fullname": $(this).find("input").val(),
"Price": $(this).find("select").val(),
"TicketDescription": $(this).find(":selected").text()
};
tickets.prices.push(price);
});
return tickets;
};
function postTotalPrice(prices) {
$.ajax({
type: "POST",
url: "Details.aspx/UpdateTotalPrice",
data: JSON.stringify(prices),
contentType: "application/json; charset=utf-8",
dataType: "json",
async: true,
success: function (data) {
UpdateTotalPrice(data);
},
error: function(data, textStatus, jqXHR) {
console.log('error!', data, textStatus, jqXHR);
}
});
};
我做错了什么?
将数据部分更改为此
data: JSON.stringify({jsonTickets:prices})
Your webmethod expects a parameter with name jsonTickets so you need to specify parameter name in data part.
此外,您不需要分配票证.price只需创建一个数组并在其中推送对象并将其传递给Webmethod。通过这种方式,您可以创建一个列表,而不是将列表分配给其房地产价格,并且在网络方法中,您期望一个列表。
var tickets = [];
$("#divFullNames div.row").each(function () {
var price = {
"Fullname": $(this).find("input").val(),
"Price": $(this).find("select").val(),
"TicketDescription": $(this).find(":selected").text()
};
tickets.push(price);
这会将列表传递给网络方法。
相关文章:
- 如何在从排序方法调用参数时将其传递给回调
- 使用JavaScript拦截方法调用参数
- 调用参数数量未知的回调
- JavaScript:按名称调用参数计算
- 我可以通过beforeSent事件更改jQuery.ajax的函数调用参数(在数据中发送)吗?
- 从 php 调用参数化的 JavaScript 函数
- 从 java 脚本调用参数化 ms-access 函数的语法是什么?
- 创建一个新函数并从另一个函数调用参数
- 获取javascript中getter的调用参数
- 如何将变量传递给属于函数调用参数一部分的函数
- 在babel加载程序中将其更改为未定义的自调用参数
- 调用参数列表的函数
- 从函数调用参数
- QtScript可以't调用参数类型为“”的函数;Q字符串&&”;
- 无用的setTimeout调用(参数周围缺少引号?)
- iOS: evaluateJavaScript将不会调用参数包含换行符的函数
- 如何在php中从HTML或javascript调用参数
- debounce获取前一个函数的调用参数
- Yii CGridView按钮-调用参数化javascript函数
- Javascript:如何动态更改函数调用参数