您好我正在使用mvc4
我有一个用于操作的剃刀视图页面
public ActionResult DeliveryAddress(string userid,int productid)
{
....
return View(m);
}
包含
<div ><a href="" class="btn btn-primary" id="place-order">DELIVER HERE</a></div>
点击这个时我正在使用jquery,
从这个页面收集一些数据$(document).ready(function () {
$("#place-order").click(function () {
var userid = $('#selected-userId').html();
var productid = $('#selected-productId').html();
$.get("Products/PlaceOrder/"+ userid, function (data) { });
});
});
我想写下另一个行动观点
[HttpGet]
public ActionResult PlaceOrder(int uid)
{
return View();
}
并粘贴变量内容
但是$.get("Products/PlaceOrder", function (data) { });
没有达到这个动作..
请帮帮我。
答案 0 :(得分:1)
这是你需要在Jquery get方法中将数据传递给url的方法,注意在函数中使用相同的参数名称
$.get('@Url.Action("PlaceOrder","Products")', { uid: userid }, function (data)
{
});
答案 1 :(得分:0)
只需在操作方法中添加HTTPGET属性,如下所示。
[HttpGet]
public ActionResult PlaceOrder()
{
return View();
}
java脚本
$("#place-order").click(function () {
var userid = $('#selected-userId').html(); // $('#selected-userId').val();
$.get('@Url.Action("PlaceOrder","Products", new { uid = userid })', function (data) { });
var productid = $('#selected-productId').html();
});
答案 2 :(得分:0)
确保您的网址正确无误。最有可能使用@ Url.Action()。并使用new传递参数,如下所示。
$.get('@Url.Action("PlaceOrder","Products",new { userid = @userid , productid = @productid })', function (data) {
});
收集数据时,请确保发送时和接收时参数名称相同。
[HttpGet]
public ActionResult PlaceOrder(int userid, int productid )
{
return View();
}
答案 3 :(得分:0)
当我希望我的视图代码被提取时,或者甚至通过Html.Action()
调用时,我使用PartialView
并通常将我的Controller Action设置为:
public ActionResult PlaceOrder(int uid)
{
return PartialView(new TestViewModel() { ID = uid });
}
作为一个例子:
TestViewModel
public class TestViewModel
{
public int ID { get; set; }
}
PlaceOrder.cshtml
@model TestViewModel
<h2>Partial View</h2>
<p>
Partial View paragraph with the id <b>@Model.ID</b>
</p>
Index.html
<hr />
@Html.Action("PartialView", "Home", new { id = 44 })
<hr />
<div class="ap"></div>
<script>
var url = '@Url.Action("PartialView", "Home")';
$.get(url, { id: 54 }, function (data) {
$(".ap").append(data);
});
</script>
结果: