基本上我有8个期权价值。我希望通过单击generate按钮随机生成每个选项的值。有什么建议吗?谢谢你提前像这样的UI
cshtml代码:
<div class="col-xs-8">
<div class="form-group">
<select name="" id="txtCupA" class="form-control">
<option value="SWEET">SWEET</option>
<option value="SOUR">SOUR</option>
<option value="SALTY">SALTY</option>
<option value="BITTER">BITTER</option>
<option value="UMAMI">UMAMI</option>
<option value="WATER">WATER</option>
<option value="WATER">WATER</option>
<option value="WATER">WATER</option>
</select>
</div>
</div>发布于 2022-05-23 09:04:32
我希望通过单击generate按钮随机生成每个选项的值。有什么建议吗?
您可以按照以下步骤操作:
Asp.net核心视图:
<div class="col-xs-8">
<div class="form-group">
<select id="txtCupA" class="form-control">
<option value="SWEET">SWEET</option>
<option value="SOUR">SOUR</option>
<option value="SALTY">SALTY</option>
<option value="BITTER">BITTER</option>
<option value="UMAMI">UMAMI</option>
<option value="WATER">WATER</option>
<option value="WATER">WATER</option>
<option value="WATER">WATER</option>
</select>
</div>
<input type="submit" id="shuffleDropDown" value="Suffle Value" class="btn btn-primary" />
</div>脚本:
@section scripts {
<script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-3.2.1.min.js"></script>
<script src="https://cdn.datatables.net/1.11.3/js/jquery.dataTables.min.js"></script>
<script>
$(document).ready(function() {
function funcArrayShuffle(array) {
var currentIndex = array.length,
temporaryValue, randomIndex;
while (0 !== currentIndex) {
randomIndex = Math.floor(Math.random() * currentIndex);
currentIndex -= 1;
temporaryValue = array[currentIndex];
array[currentIndex] = array[randomIndex];
array[randomIndex] = temporaryValue;
}
return array;
}
$("#shuffleDropDown").click(function() {
//Getting the current dropdown List
var options = $('#txtCupA option');
var values = $.map(options, e => $(e).val())
//Make It random
var shuffleddItemList = funcArrayShuffle(values);
//Made the older drowdownList empty
var dropdown = $('#txtCupA');
dropdown.empty();
//Loop through the Shaffle array item and made the New Random Dropdown List
$.each(shuffleddItemList, function(index, item) {
console.log(index, item);
dropdown.append(
$('<option>', {
value: item,
text: item
}, '</option>'))
});
});
});
</script>
}输出:

算法:
https://stackoverflow.com/questions/72342927
复制相似问题