我是JS新手,想在页面加载时设置默认值。我的HTML:
<!DOCTYPE html>
<html>
<head>
<script src="js/jquery.min.js"></script>
<script src="shared/shiny.js" type="text/javascript"></script>
<script src="css/bootstrap-3.3.6-dist/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="css/bootstrap-3.3.6-dist/css/bootstrap.min.css">
<script src="js/app.js" type="text/javascript"></script>
</head>
<body>
<div class="dropdown" id="country_select">
<button class="btn btn-default dropdown-toggle" type="button"
data-toggle="dropdown">Country<span class="caret"></span></button>
<ul class="dropdown-menu">
<li><a href="#" country-code="C1">Country1</a></li>
<li><a href="#" country-code="C2">Country2</a></li>
<li><a href="#" country-code="C3">Country3</a></li>
</ul>
</div>
</body>
我已尝试过类似问题的一些建议,但这些在我的案例中不起作用。first一个是:
var main = function(){
var data_start_type = "C1";
var $data_type_elem = $('[country-code='+data_start_type+']');
$('#country_select li a').text($data_type_elem.text());
$("#country_select li a").on("click", function () {
var country_selected=$(this).text();
Shiny.onInputChange('this_country', country_selected); //send selected data to the server script
});
};
$(document).ready(main);
上面的代码将下拉菜单的所有选项设置为“Country1”。 我发现this建议我把它放在我的JS代码下面,但它没有设置任何默认值。
$('#country_select li a')[2].click();
有人可以指出我如何解决这个问题吗?
答案 0 :(得分:0)
您希望能够使用列表执行此操作,因为列表不是针对下拉菜单的。
试试这个:
<select>
<option>.....</option>
<option selected="selected">Select a language</option>
<option>.....</option>
<option>.....</option>
<option>.....</option>
</select>
答案 1 :(得分:0)
您确定正确放置了代码吗?
var main = function(){
var $menu_items = $("#country_select li a");
$menu_items.on("click", function () {
Shiny.onInputChange('this_country', $(this).text());
});
$menu_items[0].click(); // 0 for Country1, 1 for Country2, etc
};
$(document).ready(main);
修改:这是demo。如果您打开底部的控制台,您将看到默认值。