如何解决使用MVC3 / Razor处理对象和路由?
| 我有一个包含以下内容的地理收集: [州名] [市,州] [国家] 文本框可供用户开始输入,并且jQuery自动完成框将显示可能的选项。 发布请求的URL结构将取决于从上面的集合中选择了哪个,即 www.mysite.com/allstates/someterms(如果选择了一个国家) www.mysite.com/city-state/someterms(如果选择了城市,州) www.mysite.com/ [州名称] / someterms(如果选择了州) 这些已经在我的路线中定义了。 最初,我将在控制器上添加一些逻辑以确定合适的URL结构,但我正在考虑将其简单地添加为geo表中的其他字段,因此它将是geo集合的属性。 这是我的jQuery函数,用于在文本框中的按键上触发时显示集合详细信息: $(function () {
$(\"#txtGeoLocation\").autocomplete(txtGeoLocation,{
source: function (request,response) {
$.ajax({
url: \"/home/FindLocations\",type: \"POST\",dataType: \"json\",selectFirst: true,autoFill: true,mustMatch: true,data: { searchText: request.term,maxResults: 10 },success: function (data) {
response($.map(data,function (item) {
return { label: item.GeoDisplay,value: item.GeoDisplay,id: item.GeoID }
}))
}
})
},select: function (event,ui) {
alert(ui.item ? (\"You picked \'\" + ui.item.label + \"\' with an ID of \" + ui.item.id)
: \"Nothing selected,input was \" + this.value);
document.getElementById(\"hidLocation\").value = ui.item.id;
}
});
});
我想要的是基于对象参数构造URL(似乎最简单)。我似乎只能读取\“ selected \”上的参数,而不能单击按钮。
我该怎么做?
谢谢。
解决方法
为了解决这个问题,我从Javascript中删除了“ 1”部分,并在发送到控制器的MVC路由中添加了选定的对象参数。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。