我试图想出一种方法,使用ajax和jquery来显示一个选择框的值范围。 第一个下拉列表有需要与第二个下拉框对话的选项,这是一个数字范围,我知道如何将下拉值设置为1,但不是如何设置整个范围。默认情况下,下拉列表由php范围函数生成。
任何帮助都将不胜感激。
更新 这不是最优雅的,但这就是我所拥有的
$('.change').change(function(){
var options='';
var max = $('.change option:selected').attr('title');
var min = $('.change option:selected').attr('id');
for(i=min; i <= max; i++){
options+='<option value="'+i+'">'+i+'</option>';
}
$('select[name=ticket_qty]').find("option").remove();
$('select[name=ticket_qty]').append(options);
});
我无法为所选选项拉出“ID”和“TITLE”
答案 0 :(得分:2)
如果列表很大,您可能想要使用类似:
var options='';
for(i=1; i <= 1234; i++){
options+='<option value="'+i+'">'+i+'</option>';
}
$(yourSelect).append(options);
答案 1 :(得分:1)
如果这些是数值,您可能需要考虑使用jQuery UI Slider。否则,您只需要通过附加到选择标记来删除/添加选项框中的选项。
在第一个文本框的更改事件中,调用一个函数,该函数将修改选择框2中的选项,删除不再可行的值。
function addValue(value, target) {
$('<option value="' + value + '">' + value + '</option>').appendTo( target );
}
function clearValues (target) {
$(target).find("option").remove();
}
然后您将按如下方式调用该函数:
addValue(12,$("#select2 input") );
注意:我没有测试过这段代码,只是对方法的一般概念。
这种效果可能会有用。
答案 2 :(得分:0)
您需要遍历选择框中的项目(element.options),然后在给定属性上设置.selected属性。
通过这种方式,您可以设置多个选择。
即。 element.options [i] .selected = true