0

我在后端有复选框和文件 admin/ban-country-ip.php

此处的内容是在管理后端使用复选框获取国家/地区列表

<?php
    $countryiso = mysql_query("SELECT distinct country_name as country_name FROM location_country");
    echo '<table>';
    echo '<th>Country</th><th> Add/Remove </th>';
    while ($row = mysql_fetch_assoc($countryiso)) {
        echo '<tr>';
        echo '<td>'. $row['country_name'] . '</td>';
        echo '<td><input type="checkbox"></td>';
        echo '</tr>';
    }
    echo '</table>';
?>

并且在前端注册中,它在registration.php中回显它们。

$ctrstr="";
$res=mysql_query("select *  from location_country where code NOT IN('A1','A2','AP','EU') order by name");
$ctrstr.="<select name=\"country\" id=\"country\" onChange=\"loadState();\"  >
        <option value=\"\" selected=\"selected\">-Select Country-</option>";
while($row=mysql_fetch_row($res))
{
    if($country==$row[0])
    $ctrstr.="<option value=\"$row[0]\" selected>$row[1]</option>";
    else
    $ctrstr.="<option value=\"$row[0]\">$row[1]</option>";
}
$ctrstr.="</select>";

我想知道如何使用复选框从选择列表中隐藏一个值。当我在后端取消选中一个国家/地区时,它也应该在前端的选择字段中删除。如果我再次检查它,应该会再次显示。我要提一下,各国都在mysql中的一个专栏里备货。

MYSQL - 表结构

#   Name    Type            Collation    Attributes Null    Default Extra
1   code    varchar(2)    utf8_unicode_ci       No      
2   name    varchar(255)    utf8_unicode_ci     No      
4

1 回答 1

2

使用 jQuery,您可以这样做以隐藏列表中的选项:

将 ID 属性添加到复选框:

<input type="checkbox" id='hide'>

jQuery :

<script type="text/javascript">
        $(document).ready(function() {

          $("#hide").click(function(){ 
          if( $("#hide:checked").length == 1 ) {
            $("#country option[value='1']").hide();
           }  else {
              $("#country option[value='1']").show();
           }
         });
      });

</script>

如果您想使用 PHP 打印此脚本:

$script = '<script type="text/javascript">
        $(document).ready(function() {

        $("#hide").click(function(){ 
        if( $("#hide:checked").length == 1 ) {     alert($("#hide:checked").length);
$("#country option[value=1]").hide();
       } else {
           $("#country option[value=1]").show();
       }
    });
  });

    </script>';
echo $script;
于 2013-09-21T15:37:58.963 回答