我正在创建一个asp.net应用程序。
我在控制器动作的视图中显示了一个图像。当我单击视图中的项目(比如图像)时,我想将一些数据(比如ID)传递给控制器动作。
我在视图中有以下代码:
@Url.Content("ActionName", "Controller");
我想将数据发送到Controller控制器的ActionName操作。
控制器操作如下所示:
public ActionResult ActionName(string someParam)
{
return View();
}
我可以毫无问题地调用控制器动作,但我无法传递数据。谢谢你的帮助。
答案 0 :(得分:1)
<a href='@Url.Action("MyAction", "MyController", new {id = "ID"})'>
<img src='@Url.Content("~/Content/Images/MyLinkImage.png")' />
</a>
答案 1 :(得分:1)
您可以在URL操作中添加图像或为图像创建onclick函数并生成Ajax请求
<a href="@Url.Action("ActionName", "Controller", new {someParam = "value"})">
<img />
</a>
答案 2 :(得分:-1)
你可以进行ajax调用
以下示例
$('#btnSave').click(function (e) {
e.preventDefault(); // <------------------ stop default behaviour of button
var element = this;
$.ajax({
url: "/ControllerName/ActionName",
type: "POST",
data: JSON.stringify({ 'Options': someData}),
dataType: "json",
traditional: true,
contentType: "application/json; charset=utf-8",
success: function (data) {
if (data.status == "Success") {
alert("Done");
$(element).closest("form").submit(); //<------------ submit form
} else {
alert("Error occurs on the Database level!");
}
},
error: function () {
alert("An error has occured!!!");
}
});
});