我有一个下拉列表,它自动提交表单并执行我通过部分视图在整个项目中使用的搜索,但它仅在我第一次使用时才有效,除非我刷新页面。这是一个带有 jQuery Mobile 项目的 MVC 4。
这是我在部分视图中的代码,
<script type="text/javascript">
$(function () {
$("#CoastLineID").change(function () {
var actionUrl = $('#TheForm').attr('action') + '/' + $('#CoastLineID').val();
$('#TheForm').attr('action', actionUrl);
$('#TheForm').submit();
});
});
</script>
<p>
@using (Html.BeginForm("SearchCoast", "Home", FormMethod.Post, new { id = "TheForm" }))
{
@Html.DropDownList("CoastLineID", (SelectList)ViewBag.ArticleId, "Select a Coastline")
}
</p>
我想每次以某种方式加载使用局部视图的页面/视图时,我都需要能够刷新页面或列表。这是一个jQuery问题???
有什么想法,如果允许的话,我可以为该网站提供 URL 吗?
更新/编辑
多谢你们,
我遇到了一些混合 jQuery Mobile 和 MVC 的问题,主要是由于它们处理 URL 字符串的方式不同,所有这些都来自 15 年的 Web 开发。所有 jQuery Mobile 文档都处理经典的 URL 字符串,例如。about/us.html 这不是 MVC 方式!
这是我填充下拉列表的控制器代码,
var coastlines = db.CoastLines.Select(c => new { c.CoastLineID, c.CoastLineName });
ViewBag.CoastLineId = new SelectList(coastlines.AsEnumerable(), "CoastLineID", "CoastLineName", 0);
这是网站,
http://www.peninsulaguide.com.au/
单击“Beach Search”,然后单击“Select a Coastline”或“Select a Town”将起作用,但之后没有刷新就什么也做不了。
有两个下拉菜单,但如果我删除一个下拉菜单并没有什么不同。
干杯,
麦克风