0

状態をアクティブまたは非アクティブに設定する css を制御する jquery 関数があります。クリックイベントで実行されます。PHP関数が実行されたとき(ユーザーがフォームで検索したとき)に、同様の関数を実行する必要があります。検索用語は、用語と ID を照合する php 関数を通過します。php関数で状態をアクティブに設定するにはどうすればよいですか? テストエリアへのリンクはこちら

http://vtour.dev4.webenabled.net/tester/index.html

領域をクリックすると、選択はアクティブなままになります。ラベンダーの検索ボックスに名前を入力して検索アイコンをクリックしても、対応するエリアは選択されません。

(検索機能ファイルを添付します。そこにたくさんのがらくたがあることは知っていますが、この例に対応するセクションは149行目あたりから始まります

入力行の横にある小さなラベンダー色のボックスは、クリック/検索アイコンです。

ありがとうございました

4

2 に答える 2

0

html スクリプトタグを出力することで、javascript 関数を実行できます。

すなわち。

<?php
echo "<script  type=\"text/javascript\">runJavascriptFunction()</script>";
?>

したがって、技術的には FetchData.php からの応答にそれをドロップすることもできますが、それが私だったら、すべて jQuery で行います。

$('#woodward-title-search-button').click(function() { //on button click
    var term = $('#searchTerm').val(); //the search term
    $('#room-'+term).css('background','red'); //or more nicely: .addClass('highlighted');
    //load the response of fetchdata into #myDiv
    $('#myDiv').load('FetchData.php?searchTerm='+term); 
});

json で PHP と通信し、div をより適切にターゲットにするために何らかの ID を提供することをお勧めします。

于 2012-06-21T04:53:54.120 に答える
0

PHPからこれを行うことはできません.Javascriptを介してすべてを行います(Ohgodwhyのコメント、特にjQueryの使用またはjQueryの使用に関するメモを参照してください-たとえば、.ajax()または.post()を使用する必要があります)。

それを行うために、AJAX は、JavaScript にどのブロックをオン/オフにするかを伝えるフラグと、テキスト応答を返します。これらすべてを JSON オブジェクトにまとめることができます。

<?php

$returnArray = array('html' => 'HTML TO DISPLAY', 'blocks'=>array(1,3,4));
echo json_encode($returnArray);

?>

JavaScript では、JSON オブジェクト要素を使用してテキストを表示し、右側のブロックのオン/オフも切り替えます。jQuesry では JSON オブジェクトが処理されるため、このビットは簡単になります。そのため、html ビットには response.html、ブロックには response.blocks のみが必要です。

于 2012-06-21T04:43:56.170 に答える