简单更改:将您的更改事件处理程序绑定到容器 div(执行此操作时应该存在)并从中获取文本值:
jQuery('.models').on('change','select',function() {
var model = jQuery(':selected',this).text();
var modelValue = jQuery(':selected',this).val();
});
注意:您的小提琴和标记已禁用,当然需要先启用它,例如:
jQuery('.models>select').prop('disabled',false);
编辑:使用你的小提琴,我捣碎了你的负载 - 因为它在那里不起作用并且干净的字符串不存在,这有效:
jQuery('.brands').change(function () {
alert('here');
var brand = jQuery('.brands option:selected').text();
// brand = cleanString(brand);
//jQuery('.models').load('/pf-models #' + brand);
jQuery('.models>select').append('<option >She is a classic</option>').prop('disabled', false);
});
alert(jQuery('.models>select').prop('disabled'));
jQuery('.models').on('change', 'select', function () {
var model = jQuery(":selected", this).text();
alert(model);
model = cleanString(model);
jQuery('#show-models').load('/pf-urls #' + model);
});
更新的小提琴:http: //jsfiddle.net/HNgKt/6/
编辑更详细的示例,仍然基于从第一部分的负载返回的有效标记假设,我已经替换了 html 替换,因为我们无法访问该部分:
jQuery('.brands').change(function () {
var brand = jQuery('.brands option:selected').text();
$('.models').html('<select class="models"><option >' + brand + ' She is a classic</option><option>clunker</option></select>');
});
jQuery('.models').on('change', 'select', function () {
var model = jQuery(":selected", this).text();
alert('model:' + model);
});
小提琴:http: //jsfiddle.net/HNgKt/7/
如果您选择品牌,则提醒模型,然后是模型。