我使用dropkick js设置下拉表单的样式,但有一个小问题。我想做的是在做出选择时做两件事:根据选择生成另一个下拉列表并在控制台中打印值(只是为了简单起见)。此外,我还想在控制台中打印生成的下拉列表的值。所以这就是我的代码:
$('.dropStyled').dropkick({
change: function (value, label) {
$('#subCategory').find('span.sub').html('<select id="selectSubCountry" name="subCountry" class="dropStyledSub" tabindex="2"></select>');
$('#selectSubCountry').append($("<option></option>").attr("value",'test').text(label));
$('.dropStyledSub').dropkick(function() { //this is the dropdown I create dynamically
change: function(val, lab) {
console.log(val);
}
});
console.log(value);
}
});
问题是我在这一行得到“Uncaught SyntaxError:Unexpected token”:
change: function(val, lab) {
有什么想法吗?
答案 0 :(得分:1)
dropkick
函数将一个对象作为参数,因此您必须从调用中删除该函数,即
$('.dropStyledSub').dropkick({
change: function(val, lab) {
console.log(val);
}
});
您传递的方式实际上在语法上是不正确的,因为您将形式为function() {...}
的函数声明与形式为{ change : function() {...} }
的对象声明混合在一起。
答案 1 :(得分:1)
删除第二个dropkick参数中的function()
,它必须是一个对象:
$('.dropStyled').dropkick({
change: function (value, label) {
...
$('.dropStyledSub').dropkick({ //this is the dropdown I create dynamically
change: function(val, lab) {
console.log(val);
}
});
...
}
});