gpt4 book ai didi

javascript - 使用 Ajax 的 URL Action 参数

转载 作者:行者123 更新时间:2023-11-29 16:05:44 25 4
gpt4 key购买 nike

我正在尝试使用参数将数据从 View 传递到 Controller 。现在我遇到了一些困难。一旦我从表中选择一行并按下一个具有 onclick 方法的按钮,我就会尝试传递这些参数到 ShowTasks()

C# Controller :

     [Route("/service/delivery/{id}/{shopdoccode}/{regdate}")]
public ActionResult Delivery(string id, string shopdoccode, string regdate)
{
//do stuf
}

用户点击按钮时的Javascript函数:

function ShowTasks() {
//Dear Stackoverflow > This works, this is for selecting a row in the table
var $selectedRow = $(".highlight");
if ($selectedRow.length == 1) {
var dcColumn = 0;
var rdColumn = 1;
var shopdoccodeColumn = 3;

//assigning name to the colomn value
var id = $selectedRow[0].children[dcColumn].innerText.trim();
var regdate = $selectedRow[0].children[rdColumn].innerText.trim();
var shopdoccode = $selectedRow[0].children[shopdoccodeColumn].innerText.trim();

//ajax
if (id && regdate && shopdoccode) {
$.ajax({
type: 'POST',
url: '@Url.Action("service", "delivery" ,new { id = "id", shopdoccode = "shopdoccode", regdate = "regdate" })',
data: { id, regdate, shopdoccode },
success: function (data) {
if (data.success) {
console.log("Succes");
}

},
error: function (data) {
console.log("Error");
}
});
}
}
}

到目前为止我做了什么?坐了几个小时试图找到一种方法将参数提供给我的 Controller ,以便我可以调用 SQL 存储过程。不幸的是,我不能简单地为此使用隐藏表单。

这也很有帮助: Url.Action parameters?

@sleeyuen enter image description here

最佳答案

在我看来,您的 Url.Action 的参数顺序错误。将其更改为:

url: '@Url.Action("delivery", "service", new { id = "id", shopdoccode = "shopdoccode", regdate = "regdate" })',

这是您想要的适当重载:

Action(String, String, Object)依次使用 actionName、controllerName 和 routeValues。

关于javascript - 使用 Ajax 的 URL Action 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43356240/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com