JQuery.css(“display”)=“block”无法正常工作

时间:2014-12-18 05:25:16

标签: javascript jquery css asp.net

我想根据TextBox中选择的值显示和隐藏我的RadiobuttonList。我为此编写了以下代码

$("#<%= rbtnIsPFEnabled.ClientID %>").click(function () {
                pfno = $("#<%= txtPFNo.ClientID %>");
                if ($("#<%= rbtnIsPFEnabled.ClientID %> input:checked").val() == "Yes") {
                    pfno.css("dispay") = "block";
                }
                else
                    pfno.css("dispay") = "none";
            });

虽然我使用JQuery.show()JQuery.hide()完成了我的任务,但由于我想知道为什么第一种方法失败而感到不满意。第二个是我在上面的代码中使用了$("#<%= rbtnIsPFEnabled.ClientID %>"),我可以通过第二次使用其他内容(例如this或其他任何内容)将其减少为一个吗?

我尝试了$(this+" input:checked").val()$(this.toString()+" input:checked").val()但它没有用,所以我不得不重复它。

3 个答案:

答案 0 :(得分:4)

$("#id").css("display", "none");
$("#id").css("display", "block");

如果您的pfno包含您的ID

然后这应该工作

$(pfno).css("display", "none");
$(pfno).css("display", "block");

您应该使用FireBug进行调试

修改

<script type="text/javascript">
    function fun(obj) {

        if ($("#<%= rbtnIsPFEnabled.ClientID %> input:checked").val()=='Yes') {
            $("#<%= txtPFNo.ClientID %>").css("display", "block");
        }
        else {
            $("#<%= txtPFNo.ClientID %>").css("display", "none");
        }
    }


</script>  

<asp:RadioButtonList   ID="rbtnIsPFEnabled"     runat="server" >
    <asp:ListItem Text="Yes" Value="Yes" onchange="fun(this);"> </asp:ListItem>
    <asp:ListItem Text="No" Value="No" onchange="fun(this);"> </asp:ListItem>
    </asp:RadioButtonList>

    <asp:TextBox runat="server" ID="txtPFNo"/>

答案 1 :(得分:0)

您可以使用jQuery以多种方式解决此问题。 e.g。

$(pfno).css("display", "none"); //used when you are defining single css property or in chaining method
$(pfno).css({"display":"none"}); // used when you are defining multiple CSS property           
$(pfno).hide(); //show/hide function also perform display block/none functionality which is mostly used in script

答案 2 :(得分:-1)

好的,首先这是不正确的:

     pfno.css("dispay") = "block";

以上将无法正常工作

pfno.css({ 'display' : 'block' });是如何设置css属性的,

pfno.css( 'display' , 'block' );是另一种设置css属性的方法,因此measn yuo正在做其他错误的事情。你需要设置一个警告或写入控制台以确认你的if语句和你的点击处理程序是工作