Javascript jquery.show未运行
下面的代码对我来说似乎执行得不正确,我不明白为什么Javascript jquery.show未运行,javascript,jquery,asp.net,Javascript,Jquery,Asp.net,下面的代码对我来说似乎执行得不正确,我不明白为什么NonITView和ITView都是我的ASP页面中的divtxtIsIT是页面上的一个asp:textbox,在页面加载时获取“yes”或“no” if (document.getElementById("<%= txtIsIT.ClientID %>").value = "yes") { $("#NonITView").hide("slow"); $("#ITView
NonITView
和ITView
都是我的ASP页面中的divtxtIsIT
是页面上的一个asp:textbox
,在页面加载时获取“yes”或“no”
if (document.getElementById("<%= txtIsIT.ClientID %>").value = "yes") {
$("#NonITView").hide("slow");
$("#ITView").show("slow");
}
else if (document.getElementById("<%= txtIsIT.ClientID %>").value = "no") {
$("#ITView").hide("slow");
$("#NonITView").show("slow");
}
else {
alert("Error");
}
if(document.getElementById(“”.value=“yes”){
$(“#非ITView”).hide(“慢”);
$(#ITView”).show(“slow”);
}
else if(document.getElementById(“”.value=“否”){
$(“#ITView”).hide(“slow”);
$(“#非ITView”).show(“慢”);
}
否则{
警报(“错误”);
}
如果计算正确,则为
。在firefox的web控制台中,通过输入jquery.show/.hide函数,div被正确地显示/隐藏,这让我感到困惑。任何突出的问题都应该解决吗?在两行的=
错误处,您使它们相等,而不是检查它们
document.getElementById("<%= txtIsIT.ClientID %>").value = "yes"
document.getElementById(“”)。value=“是”
提示,为了避免此类错误,请将它们写反,如下所示
if( "yes" == document.getElementById("<%= txtIsIT.ClientID %>").value) {}
if(“yes”==document.getElementById(“”.value){
这样,如果无意中写入=
,它将抛出一个错误。在两行的=
上出现错误,您使它们相等,而不是检查它们
document.getElementById("<%= txtIsIT.ClientID %>").value = "yes"
(document.getElementById("<%= txtIsIT.ClientID %>").value = "yes")
document.getElementById(“”)。value=“是”
提示,为了避免此类错误,请将它们写反,如下所示
if( "yes" == document.getElementById("<%= txtIsIT.ClientID %>").value) {}
if(“yes”==document.getElementById(“”.value){
这样,如果意外写入=
,它将抛出一个错误。(document.getElementById(“”.value=“yes”)
(document.getElementById("<%= txtIsIT.ClientID %>").value = "yes")
应该是
(document.getElementById("<%= txtIsIT.ClientID %>").value == "yes")
(document.getElementById(“”)。value==“是”)
在if语句中,它应该是==
(document.getElementById(“”.value=“yes”)
应该是
(document.getElementById("<%= txtIsIT.ClientID %>").value == "yes")
(document.getElementById(“”)。value==“是”)
在if语句中,它应该是if语句中的==
,您正在执行赋值
document.getElementById("<%= txtIsIT.ClientID %>").value = "yes"
document.getElementById(“”)。value=“是”
这将始终被评估为真。因此,将该行更改为:
if(document.getElementById("<%= txtIsIT.ClientID %>").value === "yes")
if(document.getElementById(“”)。value==“yes”)
还要注意三个等号。现在,使用===是equality的常见做法。请参阅本文,了解原因:
在if语句中,您正在执行作业
document.getElementById("<%= txtIsIT.ClientID %>").value = "yes"
document.getElementById(“”)。value=“是”
这将始终被评估为真。因此,将该行更改为:
if(document.getElementById("<%= txtIsIT.ClientID %>").value === "yes")
if(document.getElementById(“”)。value==“yes”)
还要注意三个等号。现在,使用===是equality的常见做法。请参阅本文,了解原因:
你可以用这样的东西
$(document).ready(function() {
$('#Button_ID').click(function() {
if ($("#<%= txtIsIT.ClientID %>").val() == "yes") {
$("#NonITView").hide("slow");
$("#ITView").show("slow");
}
else if ($("#<%= txtIsIT.ClientID %>").val() == "no") {
$("#ITView").hide("slow");
$("#NonITView").show("slow");
}
else {
alert("Error");
}
});
});
$(文档).ready(函数(){
$('#按钮_ID')。单击(函数(){
如果($(“#”).val()=“是”){
$(“#非ITView”).hide(“慢”);
$(#ITView”).show(“slow”);
}
else if($(“#”).val()=“否”){
$(“#ITView”).hide(“slow”);
$(“#非ITView”).show(“慢”);
}
否则{
警报(“错误”);
}
});
});
您可以使用这样的功能
$(document).ready(function() {
$('#Button_ID').click(function() {
if ($("#<%= txtIsIT.ClientID %>").val() == "yes") {
$("#NonITView").hide("slow");
$("#ITView").show("slow");
}
else if ($("#<%= txtIsIT.ClientID %>").val() == "no") {
$("#ITView").hide("slow");
$("#NonITView").show("slow");
}
else {
alert("Error");
}
});
});
$(文档).ready(函数(){
$('#按钮_ID')。单击(函数(){
如果($(“#”).val()=“是”){
$(“#非ITView”).hide(“慢”);
$(#ITView”).show(“slow”);
}
else if($(“#”).val()=“否”){
$(“#ITView”).hide(“slow”);
$(“#非ITView”).show(“慢”);
}
否则{
警报(“错误”);
}
});
});
为什么要混合使用jQuery和常规javascript。如果要使用jQuery,请坚持使用它:
if ($("#<%= txtIsIT.ClientID %>").val() == "yes") {
$("#NonITView").hide("slow");
$("#ITView").show("slow");
}
else if ($("#<%= txtIsIT.ClientID %>").val() == "no") {
$("#ITView").hide("slow");
$("#NonITView").show("slow");
}
else {
alert("Error");
}
if($(“#”).val()=“是”){
$(“#非ITView”).hide(“慢”);
$(#ITView”).show(“slow”);
}
else if($(“#”).val()=“否”){
$(“#ITView”).hide(“slow”);
$(“#非ITView”).show(“慢”);
}
否则{
警报(“错误”);
}
为什么要混合使用jQuery和常规javascript。如果要使用jQuery,请坚持使用它:
if ($("#<%= txtIsIT.ClientID %>").val() == "yes") {
$("#NonITView").hide("slow");
$("#ITView").show("slow");
}
else if ($("#<%= txtIsIT.ClientID %>").val() == "no") {
$("#ITView").hide("slow");
$("#NonITView").show("slow");
}
else {
alert("Error");
}
if($(“#”).val()=“是”){
$(“#非ITView”).hide(“慢”);
$(#ITView”).show(“slow”);
}
else if($(“#”).val()=“否”){
$(“#ITView”).hide(“slow”);
$(“#非ITView”).show(“慢”);
}
否则{
警报(“错误”);
}
发现了我的问题。当UpdatePanel
重新加载时,它会将其内容的属性恢复到默认状态,在本例中,两个div上的属性都是style=“display:none”
。代码将运行,显示适当的div,然后立即再次隐藏它,因为稍后在函数中我告诉它启动UpdatePanel
的回发触发器
谢谢大家的帮助 发现了我的问题。当UpdatePanel
重新加载时,它会将其内容的属性恢复到默认状态,在本例中,两个div上的属性都是style=“display:none”
。代码将运行,显示适当的div,然后立即再次隐藏它,因为稍后在函数中我告诉它启动UpdatePanel
的回发触发器
谢谢大家的帮助 if语句中有一个错误,应该是has-only-one=应该是==尝试将其放入文档就绪部分,并且如果使用jquery,则使用$(“#”)val()而不是document.getElementById(“”).value,您应该使用==而不是=。您不能使用更新解决方案更改代码,因为这样会使它们看起来是错误的。如果您愿意,只需对它们做一些注释。当您显然也在使用jQuery时,为什么还要使用document.getElementById?If语句中有一个错误,它应该只有一个=它应该是==尝试将其放在文档就绪部分,并且如果您使用jQuery,请使用$(“#”).val()而不是document.getElementById(“”).value,您应该使用==而不是=。您不能使用更新解决方案更改代码,因为这样使它们看起来像wr