0

スクリプトタグを介してjQueryとPHPファイルの組み合わせを呼び出そうとしていますが、正しくロードされていません。

これが私のコードです

<script type="text/javascript">
jQuery(document).ready(function(){
$("#country").change(function(){
    var getVal = $(this).val();
<?php $sql="select t.term_id,t.description,t2.name,t2.slug from wp_term_taxonomy as t join wp_terms as t2 on t.term_id=t2.term_id where t.parent=3";
$data=mysql_query($sql); 
while($rec=mysql_fetch_array($data))
{?> if(getVal=="<?php echo $rec['name'];?>" )
  {
    window.location = "<?php echo get_category_link( $rec['term_id'] );?>";
  } <?php }?>                           
});
$("#team").change(function(){
    var getVal = $(this).val();
<?php
$args=array(
  'orderby' => 'name',
  'order' => 'ASC',
  'taxonomy' => 'teams'
  );
$categories=get_categories($args);
  foreach($categories as $category) { ?>if(getVal=="<?php echo $category->name;?>"){
<?php $x=str_replace(' ','-',$category->name);
      $y=str_replace('\'','',$x);?>
    window.location = "<?php echo home_url( '/' );?>teams/<?php echo $y;?>";
  }
<?php }?>
});
});
</script>
4

2 に答える 2

1

それはできません。ページが読み込まれるとPHPが実行され、「変更」イベントを待ちません。それは、この混乱の中で私が見ることができる唯一のものです。

php で jquery を生成してみてください。問題ありません。

于 2012-05-29T12:46:57.253 に答える
0

PHP はサーバー上で実行され、JavaScript はクライアント上で実行されます。このように組み合わせることはできません。

1 つの方法は、JavaScript に ajax を使用して php ファイルを呼び出させることです。

http://viralpatel.net/blogs/2009/04/jquery-ajax-tutorial-example-ajax-jquery-development.html」および「http://api.jquery.com/category/ajax/」を参照してください

したがって、JavaScript 変更イベントは、php スクリプトが存在する URL を ajax 経由で呼び出します。php スクリプトはデータベースにクエリを実行し、結果を json 形式で javascript に出力します。javascript は基本的に、php 出力からの結果に対して必要なことは何でも行うことができます。

于 2012-05-29T13:00:25.103 に答える