执行 JavaScript 代码并检查基于 $id=$_GET['id'] 的单选按钮;加载页面时


execute the javascript code and check radiobutton based on $id=$_GET['id']; when page is load

请帮我一些...当页面加载时,如果$Id=Pack单选按钮包为选中并DIV PACK显示:块;

如果$id =ind ,则单选按钮 ind 为选中并 DIV 输入显示:块;

<?PHP
    $id=$_GET['id'];
?>
<!DOCTYPE>
<html>
    <body>
        <label>Package</label>
        <input type="radio" name="package" value="pack"  
                <?php if($id=='pack') 
                    { 
                        echo"checked"; 
                        echo"<script type='"text/javascript'">";
                        echo"document.getElementById('"package'").style.display='"block'"";
                        echo"</script>";
                     } ?> 
         >
        <label>Individual</label>
        <input type="radio" name="package" value="ind" 
                 <?php if($id=='ind') 
                     {
                       echo"checked"; 
                       echo"<script type='"text/javascript'">";
                       echo"document.getElementById('"individual'").style.display='"block'"";
                       echo"</script>";
                      } ?> 
         >
        <div id="package" style=" display:none; height:100px; background-color:#a00; color:#fff;">
            Display this div if PACKAGE is checked
        </div>
        <div id="individual"  style=" display:none; height:100px; background-color:#a00; color:#fff;">
            Display this div if INDIVIDUAL is checked
        </div>
    </body>
</html>

试试这个:

<?PHP
    $id=$_GET['id'];
?>
<!DOCTYPE>
<html>
    <body>
        <label>Package</label>
        <input type="radio" name="package" value="pack"  >

        <label>Individual</label>
        <input type="radio" name="package" value="ind"   >

        <div id="package" style=" display:none; height:100px; background-color:#a00; color:#fff;">
            Display this div if PACKAGE is checked
        </div>
        <div id="individual"  style=" display:none; height:100px; background-color:#a00; color:#fff;">
            Display this div if INDIVIDUAL is checked
        </div>
                        <?php if($id=='pack') 
                    { 
                        echo"checked"; 
                        echo"<script type='"text/javascript'">";
                        echo"document.getElementById('"package'").style.display='"block'"";
                        echo"</script>";
                     } ?> 
                                      <?php if($id=='ind') 
                     {
                       echo"checked"; 
                       echo"<script type='"text/javascript'">";
                       echo"document.getElementById('"individual'").style.display='"block'"";
                       echo"</script>";
                      } ?> 
    </body>
</html>

你可以在客户端用一些CSS和jQuery做整个"点击广播节目/隐藏那个div"的事情。

$(document).ready(function () {
     $("input[type=radio]").click(function () {
        var showId = $(this).val() === 'pack' ? 'package' : 'individual';
        var hideId = (showId === 'package') ? 'individual' : 'package';
        $('#' + showId).show();
        $('#' + hideId).hide();
    });
});

这是一个演示

除了hide((和show((,你也可以使用toggle((或toggleClass((与Sudhir指出的"show"或"hide"CSS类结合使用。

像这样的解决方案使您的代码更干净,恕我直言:)

不需要js,你可以这样做,创建 CSS 类

.hide {
  display: none;
}
.show {
  display: block
}

并在 PHP 文件中

$packChecked = ($id == "pack") ? "checked='checked'" : "";
$indChecked = ($id == "ind") ? "checked='checked'" : "";
$packClass = ($id == "pack") ? "show" : "hide";
$indClass = ($id == "ind") ? "show" : "hide";
then apply, like:
<input type="radio" name="package" value="pack" <?php echo $packChecked; ?> />
<div id="package" class="<?php echo $packClass; ?>">
...
</div>
//similarly for another radio button