使用表属性时,表显示/隐藏中断

时间:2013-08-25 13:16:30

标签: c# jquery asp.net

我正在尝试隐藏并使用正在运行的jquery显示一个表。我的问题是我还需要检查这个表是否在代码隐藏中是可见的,所以我可以说它是否可见然后验证这些字段。我还希望表格在页面加载时不可见。

在我的PageLoad上添加以下代码时,javascript停止工作

table1.Visible = false;

$(document).ready(function () {
    $("#checkbox1").change(function () {
        $("#table1").toggle();
    });
})

<input type="checkbox" id="checkbox1" name="checkbox1" />
<table id="table1">
Hiddent Fields
</table>

4 个答案:

答案 0 :(得分:1)

这是我的2美分:

在标记中:

<table id="table1" runat="server">

在Page_Load中:

table1.Style.Add("display", "none");

当你想检查表是否不可见时:

if(table1.Style["display"] == "none")
{
    // Do what you need to 
}

您将完全控制jquery中的表以及后面的代码。

答案 1 :(得分:0)

您可以使用hidden选择器。

// Matches all elements that are hidden
$('element:hidden')

visible选择器

// Matches all elements that are visible.
$('element:visible')

您可以使用.is(':visible')来测试某些内容是否可见,并使用.is(':hidden')来测试相反的内容:

隐藏页面加载你可以使用

$(document).ready(function () {
   $('#table1').hide();
});

或使用css

#table1{ display:none; } 

DEMO

$(document).ready(function () {
    $("#table1").hide();
     $("#checkbox1").change(function () {
        $("#table1").toggle();
    });
})

答案 2 :(得分:0)

<强> DEMO

试试这个,

$(document).ready(function () {
    $("#table1").hide();
     $("#checkbox1").change(function () {
        $("#table1").toggle();
    });
})

并指定id="checkbox1"

<input type="checkbox" id="checkbox1" />
<table id="table1">
    <th>Hidden things</th>
</table>

答案 3 :(得分:0)

您尝试使用 ID #checkbox1 )代替他的名称来访问元素,因此您的问题是您的更改事件是从未触发过。 更改您的选择器以使用name='checkbox1'

  $("input[name='checkbox1']").change(function () {});

或者在您的输入中添加id='checkbox1'

 <input type="checkbox" name="checkbox1" id="checkbox1"  />

<强> DEMO HERE