2017-02-20 26 views
0

我问过这个问题,但从来没有得到其工作的答案,我该如何防止加载隐藏的HTML标签?或完全以删除它们从页

我有这个输入字段:

<form method ="post" action="select.php"> 
<input id="nol" style="width: 350px;" type="text" name="searchdisease" placeholder="type diagnosis one"> 
<input class="btn btn-success" style="width: 120px; margin-right: -90%; margin-left: 9%;" type="submit" name="search" value="Search"> 
</form> 

该帖子的用户输入到下一个页面,上该网页我基于用户输入获取从数据库数据和回声的选择标签:

$search_disease = $_POST['searchdisease']; 
$query="SELECT diagnosis, ICD10 FROM medications WHERE diagnosis LIKE '%$search_disease%'"; 
$result= $con->query($query); 

但我赞同之前,我检查后含有任何值,如果没有,那么禁用,隐藏然后删除所有此类选择标签

<?php 
if(strlen($_POST['searchdisease']) == 0){ 
    ?> 
    <script type="text/javascript">$("#disease").remove();</script> 

    <select id="disease" style="width: 40%; display: none;" disabled="disabled" name="tdisease-remove"> 

    <?php while ($row=$result->fetch_array(MYSQLI_ASSOC)) { ?> 
    <option value="<?php echo $row['ICD10']?>"><?php echo $row['diagnosis'];?> </option> 
    <?php } ?> 
    </select> 
    <script type="text/javascript"> 
    $("#tdisease-remove").remove(); 

    </script> 
    <?php } else { ?> 

<select id="disease" style="width: 40%; position: relative;left: 100px; right: 200px; left: -5px;" name="tdisease"> 

    <?php while ($row=$result->fetch_array(MYSQLI_ASSOC)) { ?> 
<option value="<?php echo $row['ICD10']?>"><?php echo $row['diagnosis'];?> </option> 
<?php } ?> 
    </select> 
    <?php } ?> 

但这下拉没有被删除,它只是用来加载在其对性能的影响的背景数据,所以我想知道有没有,我可以阻止它的PHP检查用户输入后立即加载方式为了价值?

+0

为什么你需要使用Javascript去除标签,只是不要在第一个地方创建它们。 – Barmar

+0

好吧,我创建它是因为它是我试图制作的结算应用程序,所以有时用户不会使用基于他或她想要制作的诊断数量的一些输入字段,但有时他或她将使用全部有时候他不需要全部使用它们我想根据用户输入删除它们 – Morena

+0

您正在删除“疾病”输入字段,然后重新创建它。这意味着有一些早期的代码正在创建输入字段。只需更改较早的代码,以便它不创建它。 – Barmar

回答

0

取出if()块中添加<select>的代码。它只需要删除#tdisease-remove

<?php 
if(strlen($_POST['searchdisease']) == 0){ 
    ?> 
    <script type="text/javascript"> 
    $("#tdisease-remove").remove(); 
    </script> 
    <?php } else { ?> 

<select id="disease" style="width: 40%; position: relative;left: 100px; right: 200px; left: -5px;" name="tdisease"> 

    <?php while ($row=$result->fetch_array(MYSQLI_ASSOC)) { ?> 
<option value="<?php echo $row['ICD10']?>"><?php echo $row['diagnosis'];?> </option> 
<?php } ?> 
    </select> 
    <?php } ?> 
相关问题