我有一组级联下拉列表,其中一个值定义下一个的选项。由于各种原因,我的应用程序在url路径中表示它比url args更有意义。所以我想要像
这样的网址mysite/#/Supermarkets/Produce/Apples
Supermarkets
不是下拉菜单,Produce
和Apples
。诀窍是我提前不知道路径哈希有三个部分;第一部分始终存在,但只有在路径的第一个/Supermarkets/
部分结算后才知道有两个(或三个或一个或零)下拉列表的事实。
我不知道如何用sammy来解决这个问题。它甚至支持这种情况吗?
答案 0 :(得分:0)
您可以使用参数创建路线。然后params对象访问参数。我尝试了下面适合我的代码:
var app = $.sammy('header', function () {
//this allows us to use the sammy templates
this.use('Template');
//load header template
this.get('/Supermarkets/:type/:item', function (context) {
alert(this.params['type']);
alert(this.params['item']);
});
});
$(document).ready(function (){
app.run();
});
所以现在如果url是/ Supermarkets / Produce / Apples,我将获得两个警报,一个用于类型参数,一个是Produce,一个用于返回Apples的item参数。