jquery/javascript随机选择
问题描述:
我想从随机选择一个选项。jquery/javascript随机选择
<select class=".sel" id="sel">
<option>a</option>
<option>b</option>
<option>c</option>
<option>d</option>
</select>
其实我正在使用jQuery自动完成。
那么,问题是我如何从选择框中随机选择选项?
和我的尝试是
function change_something(opt)
{
var randomOption=Math.floor(Math.random()*$(opt+' option').size());
$(opt+ option["value='"+randomOption+"'"]).attr('selected', 'selected');
}
其实我不是一个jQuery的专家,所以我越来越无法改变的东西。
答
这将适用于您的HTML示例代码片段。
var options = $("#sel > option");
var random = Math.floor(options.length * (Math.random() % 1));
$("#sel > option").attr('selected',false).eq(random).attr('selected',true);
+0
如果我想从第一个选项中随机选择其中一个选项,该怎么办? (通常为空选项) - andufo刚刚编辑 – andufo 2016-04-09 03:01:43
答
这就是你需要什么
options = $("#sel > option")
options[Math.floor(Math.random() * options.length)].selected = true
而且,使用类= “选择”,而不是阶级= “SEL。”
答
像这样的东西应该工作:
var $options = $('#sel').find('option'),
random = ~~(Math.random() * $options.length);
$options.eq(random).prop('selected', true);
答
从“.sel” 更改您的类 “选择”,然后尝试:
$(document).ready(function() {
var index = Math.floor(Math.random() * $(".sel option").length) + 1;
$("select option:nth-child(" + index + ")").prop("selected", true);
});
哪里是问题吗?你的代码在哪里? – charlietfl 2012-03-06 04:10:05
@elclanrs感谢ou对这个问题的贡献,我试了一下' \t var randomOption = Math.floor(Math.random()* $(opt +'option')。size()); $(opt + option [“value ='”+ randomOption +“'”])。attr('selected','selected');' – Red 2012-03-06 04:10:11
如何看待这第一个:http://stackoverflow.com/questions/7577047/need-a-jquery-randomly-selected-identifier-from-options-available – 2012-03-06 04:14:41