1

jqueryを使用して、次のコードを含むリンクラベル付きのテーブルを表示できます。

 $(document).ready(function()
{
    $("#show").click(function()
    {
        $("#table").show();
    });
});

しかし、ボタンに対してこれを実行したい場合は、テーブルが1秒間表示されてから、非表示になります。これらはボタンのコードです:

$(document).ready(function()
{
    $("#button").click(function()
    {
        $("#table").show();
    });
});

アップデート :

    $(document).ready(function()
{
    $("#table").hide();
    $("#button").click(function()
    {
        $("#table").show();
    });

});

コードは次のとおりです。

    <script type="text/javascript" src="jquery-1.8.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
    $("#table").hide();
    $("#button").click(function()
    {
        $("#table").show();
    });

});
</script>
</head>

<body>
<p><a href="#" id="show">Show</a> <a href="#" id="hide">Hide</a></p>
<form id="form1" name="form1" method="post" action="">
  <p>
    <input type="submit" name="button" id="button" value="Show" />
  </p>
  <p>&nbsp; </p>
</form>
<table width="515" border="0" class="table1" id="table">
  <tr>
    <td width="509" class="table1"><img src="Image/Tulips.jpg" width="400" height="400" alt="Tulips" /></td>
  </tr>
</table>
4

3 に答える 3

4

あなたのコードはうまく機能します、多分あなたが言うことはtoggleあなたが行くここにあります:デモ

私はちょうどに変わっ.show().toggle()

$(document).ready(function()
{
    $("#button").click(function()
    {
        $("#table").toggle();
    });
});

更新:type="submit"問題は、フォームが送信される原因となるボタンで 使用していることです...それを次のように変更しますtype="button"

別の方法type="submit"そこにとどまる):

$(document).ready(function()
{
    $("#table").hide();
    $("#button").click(function()
    {
        $("#table").show();
        return false;           
    });

});

return false;ボタンのデフォルトアクションを防ぐために追加しました。

于 2012-09-09T19:13:41.530 に答える
1
$(document).ready(function()
{
    $("#button").click(function()
    {
        $("#table:hidden").show();
        $("#table:visible").hide();
    });
});

または代わりに:

$(document).ready(function()
{
    $("#button").click(function()
    {
        $("#table").toggle();
    });
});

編集あなたのコメントで指定されているように:

$(document).ready(function()
{
    $("#button").click(function()
    {
        $("#table").show();
        setTimeout(function()
        {
            $("#table").hide();
        }, 2000);
    });
});

テーブルは2000ms(2秒)表示され、その後非表示になります。

于 2012-09-09T19:13:23.253 に答える
0

ここでこれらのifステートメントを使用してください。

0 ">次に、テーブルタグがここに表示されます。上記のJavaScriptを使用できますが、送信ボタンに何らかのアクションがあった場合、どのアクションを呼び出すかがわかりません。テーブルを非表示にするか、後に指定されたタスクを実行します。ボタンを送信するので、上記のifステートメントを使用してください。それは私にとって魅力のように機能しました!:)

于 2016-06-27T05:01:40.030 に答える