-3

我正在尝试构建一个字符串参数以作为参数发送到 AJAX 调用,但是我尝试构建字符串的各种方法都没有奏效,包括简单的连接。有什么建议吗?

var partRelationType = checkBox.name;
var partNumber = checkBox.value;
var isChecked = checkBox.checked;

$.ajax({
    url: '@Url.Action("SetSelectedPart", "Select", new { customerEstimateKey = ViewBag.CustomerEstimateKey, type = partRelationType, partNumber =  partNumber, isSelected = isChecked })',
    type: "POST",
    async: true
});
4

2 回答 2

2

URL 是使用服务器端代码创建的,因此您不能使用客户端变量,因为它们还不存在。

请改用数据的 data 属性。我不确定您的服务器代码是如何将数据放入 URL 中的,但是这样的事情应该可以工作:

$.ajax({
  url: '@Url.Action("SetSelectedPart", "Select", new { customerEstimateKey = ViewBag.CustomerEstimateKey })',
  data: { type: partRelationType, partNumber: partNumber, isSelected: isChecked },
  type: "POST",
  async: true
});
于 2012-07-20T23:10:36.007 回答
0

URL 必须是类似的 URLhttp://www.blah.com.au/foo.aspx?type=bar&id=22just foo.aspx?type=bar&id=22

您是否缺少 URL.action 周围的服务器端标签?

或者某些模板解析会自动转换为上面需要的格式的 URL?

于 2012-07-20T22:49:56.150 回答