2012-02-11 10 views
2

私はそれを動作させる方法を知っていません。私はそれを説明する。jqueryデータからインデックスを選択し、SQLのコンテンツを表示

私はjqueryスクリプトでいくつかのhtmlコードを持っています。

HTML

<div id="accordion"> 
    <h3><a class="0" href="#">aparamenta modular</a></h3> 
    <div> 
    <div class="cat_content_ex"> 
     t&eacute;rmicos, diferenciales, etc ... 
    </div> 
    </div> 
    <h3><a class="1" href="#">iluminaci&oacute;n</a></h3> 
    <div> 
    <div class="cat_content_ex"> 
     luminarias std y sistemas de LED, etc ... 
    </div> 
    </div> 
</div> 
<div id="target"></div> 

スクリプト第二ヘッダー内echo "<p class='ctg_fab'>" .$row['fabricante']. " : " .$row['titulo']. " : <a href='" .$row['url']. "'>descarga</a> : tipo - " .$row['filetype']. "</p>";

ユーザクリックを実行することにより、 'first_table' という

<script type="text/javascript"> 
    $('h3 > a').live('click', function(){ 
     var currentClass = $(this).attr('class'); 
     alert (currentClass, 'alert window'); 
     if(currentClass == '0') { 
      <?php 
       include "./connection_catalogs.php";     
       $SQL = "SELECT * FROM first_table"; 
       $result = mysql_query($SQL); 
       while ($row = mysql_fetch_array($result)) { ?> 
        $('#target').html($(<?php echo "<p class='ctg_fab'>" .$row['fabricante']. " : " .$row['titulo']. " : <a href='" .$row['url']. "'>descarga</a> : tipo - " .$row['filetype']. "</p>";?>)); 
       } 
     } else if(ctg == '1') { 
      <?php 
       include "./connection_catalogs.php";     
       $SQL = "SELECT * FROM second_table"; 
       $result = mysql_query($SQL); 
       while ($row = mysql_fetch_array($result)) { ?> 
        $('#target').html($(<?php echo "<p class='ctg_fab'>" .$row['fabricante']. " : " .$row['titulo']. " : <a href='" .$row['url']. "'>descarga</a> : tipo - " .$row['filetype']. "</p>";?>)); 
       } 
       } 
      ?> 
     } 
}); 
</script> 

ユーザクリックアコーディオンの最初のヘッダおよびSQLテーブルの内容を示しますのアコーディオンを開き、echo "<p class='ctg_fab'>" .$row['fabricante']. " : " .$row['titulo']. " : <a href='" .$row['url']. "'>descarga</a> : tipo - " .$row['filetype']. "</p>";

を実行して、 'second_table'というSQLテーブルの内容を表示します
+3

あなたは明確にしてみてくださいでしpeticion_catalogo.php、クエストは何ですか? n? –

+0

はい、あります。問題はそれが機能しないということです。ユーザーが各アコーディオンのヘッダーをクリックし、どのヘッダーがクリックされたかによって、SQLテーブルなどの各コンテンツが表示されます。 –

+0

どのように/あなたは 'h3'をクリックした後にコンテンツを表示したいですか? –

答えて

2

$('#accordion.h3')は、id="accordion" class="h3"で要素を選択します。

$('#accordion > h3')に変更して、id="accordion"の親要素を持つ<h3>要素を選択します。

+0

はいそのokですが、スクリプトはアラートもSQLデータも返しません。 –

1
while ($row = mysql_fetch_array($result)) { ?> 
    document.write(<?php echo "<p class='ctg_fab'>" .$row['fabricante']. " : " .$row['titulo']. " : <a href='" .$row['url']. "'>descarga</a> : tipo - " .$row['filetype']. "</p>";?>) 
} 
+0

なぜdocument.write関数を使用すべきかわかりません...? –

+0

それは働いているかどうか?あなたはPHPとjavascriptを混ぜ合わせたので、結果は両方のコンセプトが混ざり合っています(あなたを混乱させる)。 PHPのエコーは、javascriptコードにのみ出力されますが、document/htmlには出力されません。 document.writeはjavasciptの関数で、これをドキュメントに表示します。とにかく、あなたのコードをシンプルで読みやすくして、混乱が再び起こらないようにしてください:) – bondythegreat

0

最後に私はajaxで作った。

のJScript関数を呼び出すときに、リンクでのユーザーのクリック

HTML

<div id="accordion"> 
    <h3><a onClick= MuestraCatalogo(1) href="#">aparamenta modular</a></h3> 
    <div> 
    <div class="cat_content_ex"> 
     t&eacute;rmicos, diferenciales, etc ... 
    </div> 
    </div> 
    <h3><a onClick= MuestraCatalogo(2) href="#">iluminaci&oacute;n</a></h3> 
    <div> 
    <div class="cat_content_ex"> 
     luminarias std y sistemas de LED, etc ... 
    </div> 
    </div> 
</div> 
<div id="target"></div> 

スクリプト

function MuestraCatalogo(str) 
{ 
if (str=="") 
    { 
    document.getElementById("cat_rcpt").innerHTML=""; 
    return; 
    } 
if (window.XMLHttpRequest) 
    {// code for IE7+, Firefox, Chrome, Opera, Safari 
    xmlhttp=new XMLHttpRequest(); 
    } 
else 
    {// code for IE6, IE5 
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
    } 
xmlhttp.onreadystatechange=function() 
    { 
    if (xmlhttp.readyState==4 && xmlhttp.status==200) 
    { 
    document.getElementById("cat_rcpt").innerHTML=xmlhttp.responseText; 
    } 
    } 
xmlhttp.open("GET","auth/peticion_catalogo.php?q="+str,true); 
xmlhttp.send(); 
} 

<?php 
    $q=$_GET["q"]; 
    include "../connection_catalogs.php"; 
    if($q == 1){ 
      $SQL = "SELECT * FROM aparamenta_modular"; 
    } else if($q == 2){ 
      $SQL = "SELECT * FROM control_industrial"; 
    } 
    $result = mysql_query($SQL); 
    echo "<table class='ctgPage'>"; 
    echo "<tr>"; 
    echo "<td class='ctgCabPage' style='width:150px'>FABRICANTE</td>"; 
    echo "<td class='ctgCabPage' style='width:300px'>CAT&Aacute;LOGO</td>"; 
    echo "<td colspan='2' class='ctgCabPage' style='width:150px'>ENLACE</td>"; 
    echo "</tr>"; 
    while ($row = mysql_fetch_array($result)) { 
     echo "<td class='ctgCabData' style='width:150px'>" .$row['fabricante']. "</td>"; 
     echo "<td class='ctgCabData' style='width:300px'>" .$row['titulo']. "</td>"; 
     if($row['filetype']=="pdf") { 
      $url_icon = "http://www.domain.com/img/pdf.png"; 
     } else if($row['filetype']=="xls") { 
      $url_icon = "http://www.domain.com/img/xls.png"; 
     } else if($row['filetype']=="rar") { 
      $url_icon = "http://www.domain.com/img/rar.png"; 
     } 
     echo "<td colspan='2' class='ctgCabData' style='width:150px'><a href='" .$row['url']. "'><img src='http://www.domain.com/img/download.png' alt='descarga'></a>&nbsp;&nbsp;<img src='" .$url. "' alt='type'></td>"; 
     echo "</tr>"; 
    } 
    echo "</table>"; 
    mysql_close($con); 
?> 
関連する問題