我在html中有一个Bootstrap选择下拉列表:
<fieldset class="form-group">
<label for="exampleSelect1">Number of vegan meals</label>
<select id="week2veganquantity" class="form-control" id="exampleSelect1">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
</select>
</fieldset>
它有效,但当我选择这样的值时:
$("#week2veganquantity.form-control").find("option:selected").text()
;
将返回:
"11"
如果我选择了“1”,它会在控制台中显示“11”如果我选择了“2”,如果我在控制台中打印,则会显示“12”。
如果值为“01”,则返回“101”。
有没有人见过这个?这里发生了什么事?我该如何解决呢?
答案 0 :(得分:2)
我注意到你的选择有两个id。
import re
def ReadText():
total = 0
text_file = open('Heliatext.txt', 'r')
lines = text_file.read()
numblist = []
print(lines)
print(len(lines))
stuff = re.findall(r'\d+', lines)
numblist.extend(stuff)
print(numblist)
for x in numblist:
total += int(x)
print (total)
text_file.close()
ReadText()
一个元素应该只有一个id。这让我想知道是否可能在该页面上有另一个选择&#34; week2veganquantity&#34; id,可能是由于复制/粘贴。如果是这样,jQuery将找到它们并在控制台中将它们连接成一个字符串。如果是这种情况,解决方案是给每个选择一个唯一的ID。
这是一个指向codepen的链接,我可以在其中重新创建此行为: http://codepen.io/amartin007/pen/MeaXBJ
答案 1 :(得分:1)
这对我有用。也许尝试设置您的选项的价值。由于文本用于显示目的,因此它更可靠。
$(document).ready(function() {
alert($("#week2veganquantity.form-control").find("option:selected").val());
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<fieldset class="form-group">
<label for="exampleSelect1">Number of vegan meals</label>
<select id="week2veganquantity" class="form-control" id="exampleSelect1">
<option value="1">1 - one</option>
<option value="2">2 - two</option>
<option value="3">3 - three</option>
<option value="4" selected>4 - four</option>
<option value="5">5 - five</option>
</select>
</fieldset>
&#13;