2013-10-04 6 views
0

Я хочу иметь таблицу, которая содержит слова и их значение из базы данных, в другом столбце я хочу иметь флажок для каждой строки, этот пользователь проверит их и покажет, какие слова он знает. У меня есть два вопроса в этом случае: 1 - Как я могу скрыть значение в первом и после нажатия на шоу, видя их? 2- как я могу установить флажки? я не имею этот код до сих пор, но он не работает , пожалуйста, помогите мне, если вы можетеcheckbox in table in php

<script type="text/javascript"> 
     function ShowMeanings(){ 
     document.getElementsByClassName('hiding').item(0).style.visiblility = 'visible'; 
     } 
</script> 
<?php 
    $con = mysql_connect("localhost", "root", "") 
    or die(mysql_error()); 
    if (!$con) { 
             die('Could not connect to MySQL: ' . mysql_error()); 
            } 
            mysql_select_db("project", $con) 
            or die(mysql_error()); 
            $result = mysql_query("select * from words"); 
            echo "<table border='1'> 
             <tr> 
             <th>word</th> 
             <th>meaning</th> 
             <th>check</th> 
             </tr>"; 
            while($row = mysql_fetch_array($result)) 
             { 
             echo "<tr>"; 
             echo "<td>" . $row['word'] . "</td>"; 
             echo "<td>"; 
             echo "<div"; 
             echo "class='hiding' style='visibility:hidden'>" . $row['meaninig']; 
             echo "</div>"; 
             echo "</td>"; 
             echo "<td>"; 
             echo "<input"; 
             echo "type= 'checkbox' name = 'checkbox' id = 'checkbox' value = '' />"; 
             echo "</td>"; 
             echo "</tr>"; 
             } 
             echo "</table>"; 
             mysql_close($con);                     
           ?> 

           </div> 
           <button onclick="ShowMeanings()">showmeaning</button> 
+0

Есть ли у вас какие-либо изменения jQuery? – magicianiam

+0

Вы могли бы показать какие-либо ошибки или код отладки. Также $ row ['meaninig'] ошибочно написано ... не уверен, что это по дизайну? :) – devfunkd

+0

Я знаю, что пропущен, но я не изменил столбец моей таблицы в базе данных i hava an erro, который находится здесь: document.getElementsByClassName (...). Item (...) is null document.getElementsByClassName ('hiding'). item (0) .style.visiblility = 'visible' – fahimeh

ответ

0

Для шкурой предложение:

echo "class='hiding' style='display:none'>" . $row['meaninig']; 

Чтобы показать значение:

//for Jquery 

<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script> 
<script type="text/javascript"> 
     function ShowMeanings(){ 
      $('.hiding').shoW(); 
     } 
</script> 

или

//for plain old javascript 
    <script type="text/javascript"> 
       function ShowMeanings(){ 
        document.getElementsByClassName('hiding').style.visibility = 'visible'; 
       } 
     </script> 

Ваш код Отредактировано:

<html><head> 
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script> 
<script type="text/javascript"> 
     function ShowMeanings(){ 
      $('.hiding').shoW(); 
     } 
</script> 
</head> 
<body> 
<?php 
    $con = mysql_connect("localhost", "root", "") 
    or die(mysql_error()); 
    if (!$con) { 
             die('Could not connect to MySQL: ' . mysql_error()); 
            } 
            mysql_select_db("project", $con) 
            or die(mysql_error()); 
            $result = mysql_query("select * from words"); 
            echo "<table border='1'> 
             <tr> 
             <th>word</th> 
             <th>meaning</th> 
             <th>check</th> 
             </tr>"; 
            while($row = mysql_fetch_array($result)) 
             { 
             echo "<tr>"; 
             echo "<td>" . $row['word'] . "</td>"; 
             echo "<td>"; 
             echo "<div"; 
             echo "class='hiding' style='display:none'>" . $row['meaninig']; 
             echo "</div>"; 
             echo "</td>"; 
             echo "<td>"; 
             echo "<input"; 
             echo "type= 'checkbox' name = 'checkbox' id = 'checkbox' value = '' />"; 
             echo "</td>"; 
             echo "</tr>"; 
             } 
             echo "</table>"; 
             mysql_close($con);                     
           ?> 

           </div> 
           <button onclick="ShowMeanings()">showmeaning</button> 
    </body> 
+0

У меня есть эта строка в моем коде: echo "class = 'hiding' style = 'visibility: hidden'>". $ Строки [ 'meaninig']; но функция showmeaning не работает Я хочу иметь третий столбец, который содержит флажок, который пользователь может проверить (проверьте, что он/она знает значение или нет) – fahimeh

+0

, что является предложением, также что вы имеете в виду в своем номере 2 – magicianiam

+0

@fahimeh, так что вы хотите, чтобы показать значение для всех скрытых значений для всех флажков? обновил мой код, чтобы показать все значения, когда кнопка нажата, если вы хотите, чтобы она отображала только определенные значения для каждого флажка, я бы предложил вам изменить свой код. – magicianiam

0

getElementByClassName является inexistant функция. Вы имеете в виду getElementsByClassName, который, однако, вернет список элементов, поэтому вам нужно выбрать один из них.

document.getElementsByClassName('hiding').item(0).style.visibility = 'visible';

+0

@fahimeh Попробуйте это – Colandus

+0

Я попробовал то, что вы сказали но это так, т работа :( – fahimeh

+0

Вы уверены? на вашей 'функции ShowMeanings', чтобы увидеть, если' onclick' событие действительно побежал – Colandus