0

以下のようなリンクがあるindex.phpというメインページがあります

<a href="bedview.php" target="main" onclick="javascript:showHideBedsNurse('JimAndersson')">Filter Person</a>

main は以下のような iframe です。

<div id="middle" >
    <iframe id="main" src="home.html">
    </iframe>
</div>

showHideBedsNurse(Name)という関数は次のようになります。

function showHideBedsNurse(Name){
        $('.bedclass').hide();
        alert("got Here");
}

ここで私の質問に: 警告メッセージ IE が表示されます 関数を実行しますが、関数 Can't access the elements in bedview.php (したがって、.bedclass という名前のクラス見つからず、非表示になります)。.bedclassと呼ばれるすべてのクラスを非表示にするページbedview.phpをロードする関数を記述したいと思います。この場合、すべてのクラス.JimAndersson IE にNameと呼ばれるパラメーターを表示します。

これは簡単な方法で実行できますか?私は現在立ち往生しています。関数は、bedview.php で関数を実行すると機能しますが、index.php から bedview.php をロードするときに実行すると、前述のようには機能しません。

いいえ、このリンクをクリックして関数を実行した場合にのみ、.bedclass をデフォルトで非表示にして bedview.php をロードしたくありません。

よろしくお願いします=)

4

1 に答える 1

0

これを行うにはいくつかの方法があります。1 つは、次のような変数を bedview.php に渡すことです。

<a href="bedview.php?hide=JimAndersson" target="main">Filter Person</a>

次にhide、bedview.php の変数 (つまり$_GET['hide']) を取得し、その値 (この場合はJimAndersson) に一致するすべての要素を非表示にします。これを行うshowHideBedsNurseには、bedview.php で JavaScript 関数を呼び出し、次の値を渡します$_GET['hide']

<script>
    showHideBedsNurse("<?php echo htmlspecialchars($_GET['hide']); ?>");
</script>

これは、ロジックを示すためだけの非常に単純な例であることを覚えておいてください。通常、このように JS と PHP を混在させることはお勧めしません。

また、あなたのshowHideBedsNurse関数が正確に何をするかについても明確ではありません。関数で名前を使用しない場合、名前を渡す意味は何ですか? ここで、アプローチを完全に再考することをお勧めします。代わりに、これに AJAX 呼び出しを使用することを検討してください。

于 2013-05-07T15:25:56.733 に答える