将两个隐藏文本框中的两个值传递给控制器方法的秘诀是什么?我尝试了下面的语法,但得到:CS0103:当前上下文错误消息中不存在名称“SearchLatitude”。它没有看到或喜欢我的名为SearchLatitude的隐藏文本框。不知道该怎么做,谢谢。
@Html.ActionLink("SORT BY DISTANCE", "DisplayJobsDistance", "Job", new { Latitude = SearchLatitude, Longitude = SearchLongitude }, null)
<input type="hidden" name="SearchLatitude" id="SearchLatitude">
<input type="hidden" name="SearchLongitude" id="SearchLongitude">
答案 0 :(得分:2)
您的ActionLink命令无法正常工作,因为它正在名为SearchLatitude
的视图中查找属性。您需要将此添加到传递给视图的模型中。如果您不了解这些值,可能是因为它们在客户端中添加了JavaScript,那么一些jQuery会有所帮助。
@Html.ActionLink("SORT BY DISTANCE", "DisplayJobsDistance", "Job", null, new {id="sortlink"})
和
$("#sortlink").click(function()
{
var $lat = $("#SearchLatitude").val();
var $lon = $("#SearchLongitude").val();
$(this).attr("href", $(this).attr("href") + "?latitude=" + $lat" + "&longitude=" + $lon);
}
答案 1 :(得分:0)
我用过:
@model Person
@Html.HiddenFor(i => i.Id)
@Html.ActionLink("Person", "Edit", new { id = Model.Id })