检查此JSFiddle以查看我的问题。
我从td
中选择一个时间,并希望从下拉列表中选择一个选项。
它在IE8中正常工作。但不适用于Chrome和IE9。
HTML
<table>
<tr>
<td id="time">
11:20:12
</td>
</tr>
</table>
<select id="StartHour" name="DateRangeFromSeconds">
<option value="00">00</option>
<option value="01">01</option>
<option value="02">02</option>
<option value="03">03</option>
<option value="04">04</option>
<option value="05">05</option>
<option value="06">06</option>
<option value="07">07</option>
<option value="08">08</option>
<option value="09">09</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="26">26</option>
<option value="27">27</option>
<option value="28">28</option>
<option value="29">29</option>
<option value="30">30</option>
<option value="31">31</option>
<option value="32">32</option>
<option value="33">33</option>
<option value="34">34</option>
<option value="35">35</option>
<option value="36">36</option>
<option value="37">37</option>
<option value="38">38</option>
<option value="39">39</option>
<option value="40">40</option>
<option value="41">41</option>
<option value="42">42</option>
<option value="43">43</option>
<option value="44">44</option>
<option value="45">45</option>
<option value="46">46</option>
<option value="47">47</option>
<option value="48">48</option>
<option value="49">49</option>
<option value="50">50</option>
<option value="51">51</option>
<option value="52">52</option>
<option value="53">53</option>
<option value="54">54</option>
<option value="55">55</option>
<option value="56">56</option>
<option value="57">57</option>
<option value="58">58</option>
<option value="59">59</option>
</select>
JQuery的
var s=$('#time').html().split(':');
alert(s[0]); // I'm getting the value here. How can I set this value in the drop down list?
$("#StartHour option[value='" +s[0] + "']").attr('selected', 'selected');
答案 0 :(得分:2)
当您致电.html()
获取表格单元格的内容时,您将获得所有前导和尾随空白以及您感兴趣的文本;另外,为了以防万一,您应该使用.text()
而不是.html()
。所以,只需使用replace
删除空格:
var s = $('#time').text().replace(/\s/g, '').split(':');
答案 1 :(得分:1)
这是设置下拉选择元素值的正确方法:
var s=$('#time').html().split(':');
alert(s[0]); // here i am getting value .. How can i set this value in drop down list
$("#StartHour").val(s[0]);
答案 2 :(得分:1)
使用.html或.text不是问题。问题是你应该删除空格并使用$(“#id”)。val(index)设置值。所以你更正后的代码如下:
var s = $('#time').html().replace(/\s/g, '').split(':');//white space removed
alert(s[0]); // here i am getting value
$("#StartHour").val(s[0]); //Here i am setting this value in drop down list
这应该有用。我已经在jsfiddle.net
测试了这个答案 3 :(得分:0)
$("#StartHour option[selected]").removeAttr("selected");
$("#StartHour option[value="+s[0]+"]").attr('selected', 'selected');
答案 4 :(得分:0)
尝试
$("#StartHour").val(s[0]);
答案 5 :(得分:0)
试试这个
$("#StartHour").val(parseInt(s[0]));
而不是
$("#StartHour option[value='" +s[0] + "']").attr('selected', 'selected');