因此,如果设置了此qstring var,那么我需要检查某个单选按钮
我尝试了以下内容:
$("#AcctRB").attr('checked', 'checked');
$('input[id=AcctRB]:eq(1)').attr('checked', 'checked');
哪个不起作用。我可能有语法错误
这是rb:
<input type="radio" onclick="accountShow()" id="AcctRB" runat="server" name="GuestAndAccountRB" enableviewstate="true" />Account
<% If Request.QueryString("login") = "guest" Then%>
<script type= "text/javascript">
$(".new-accnt-ad").show("slow");
$(".accountPanel").hide("slow");
$(".guestPanel").show("slow");
$("#AcctRB").attr('checked', 'checked');
</script>
<%Else%>
<script type= "text/javascript">
$(".new-accnt-ad").hide("slow");
$(".accountPanel").show("slow");
$(".guestPanel").hide("slow");
$('input[id=AcctRB]:eq(1)').attr('checked', 'checked');
</script>
<% End If %>
在我试过的任何一种情况下,这都不会检查单选按钮。
答案 0 :(得分:1)
$('input[id=AcctRB]:eq(1)').attr('checked', true);
答案 1 :(得分:1)
我敢打赌你的选择器没有返回任何元素,因为这应该有效。虽然在true
中将检查设置为attr()
可能更干净。
答案 2 :(得分:0)
JS可能会在创建所有元素之前运行。退房:$(document).ready():
$(document).ready(function() {
// put all your jQuery goodness in here.
});
使用JavaScript也没有必要这样做;只需将其直接添加到HTML中,具体取决于QueryString("login")
。
答案 3 :(得分:0)
我同意Squeegy。前几天我遇到了同样的问题,问题是即使选择器似乎是正确的,也没有检索到任何结果。
我建议您使用更高级的浏览器工具包,例如FireBug plugin for Firefox或使用Chrome的开发人员工具。在他们提供的控制台窗口中尝试你的jQuery选择器,看看结果是否符合预期。这些工具还允许您在JavaScript代码中放置断点,以查看浏览器是否正在调用选择器。
<强>更新强> 要在Firebug中测试jQuery选择器,请启用“控制台”选项卡,然后只需键入选择器。控制台将回复jQuery调用选择的那些元素。