选择的js未将选项标记为已选择 [英] Chosen js is not marking options as selected
问题描述
我在MVC表单上放置了一个多选列表框并设置了选定的js,我可以选择选项,但是当我提交表单时,没有值被提交,当我检查标记时,我知道未标记选定的选项如所选择的,所以期望值在下面
I put a multi select list box on MVC form and setup chosen js, I'm able to select options but when i submit the form no values are submitted, when i checked the markup i came to know selected options are not marked as selected, so what expect is below
<option value="1">Test 1</option>
<option value="2" selected>Test 2</option>
<option value="3" selected>Test 3</option>
但是我能看到的如附图所示.
But what i can see is as in attached picture.
推荐答案
选择不会将selected
属性添加到您的html中.如果需要找出选择了哪些值,请使用$(selector).val()
.
Chosen won't add the selected
attribute to your html. If you need to find out what values were selected, use $(selector).val()
.
例如,请参见以下内容.在此示例中,我将初始化一个选定的multiselect并将其选定的值分配给某些输出以演示$(selector).val()
.
See below for example. In this example, I am initializing a chosen multiselect and assigning it's selected values to some output to demonstrate $(selector).val()
.
$(document).ready(function() {
$(".chosen-select").chosen();
$(".chosen-select").on("change", function() {
let chosenVal = $(".chosen-select").val();
$("#out").text(chosenVal);
});
});
.chosen-select {
width: 300px;
}
<link href="https://cdnjs.cloudflare.com/ajax/libs/chosen/1.8.7/chosen.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/chosen/1.8.7/chosen.jquery.js"></script>
<select data-placeholder="Choose a Country..." class="chosen-select" multiple="">
<option value=""></option>
<option value="United States">United States</option>
<option value="United Kingdom">United Kingdom</option>
<option value="Afghanistan">Afghanistan</option>
<option value="Aland Islands">Aland Islands</option>
<option value="Albania">Albania</option>
<option value="Algeria">Algeria</option>
</select>
<p id="out"></p>
这篇关于选择的js未将选项标记为已选择的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!