2017-04-19 8 views
1

私は3つのドロップダウンリストといくつかのテキスト入力があり、最初のドロップダウンはいくつかの入力を非表示にして表示する必要はなく、2番目のドロップダウンはページをリロードして3番目のドロップ2番目のドロップダウン、2番目のドロップダウン、1つのドロップダウンで入力を非表示にすると問題が発生します。リフレッシュ後のコンテンツを非表示

リロード後の値を取得する

コード:コンテンツを非表示に

<?php 
@$utm=$_GET['utm']; // Use this line or below line if register_global is off 
if(strlen($utm) > 0 and !is_numeric($utm)) 
{ // to check if $utm is numeric data or not. 
echo "Data Error"; 
exit; 
} 
@$gpotp=$_GET['gpotp']; 
if(strlen($gpotp) > 0 and !is_numeric($gpotp)) 
{ 
echo "Data Error"; 
exit; 
} 
?> 

はjavascriptの(1ドロップダウンで呼び出す):

<script> 
    function jsFunction(value) 
{ 
var p = document.getElementById('ps'); 
var r = document.getElementById('rps'); 
var u = document.getElementById('upoint'); 
var m = document.getElementById('umng'); 
var t = document.getElementById('tmpass'); 
if ((value) == '1') 
{ 
    p.style.display = ''; 
    r.style.display = ''; 
    u.style.display = 'none'; 
    m.style.display = 'none'; 
    t.style.display = 'none'; 
} 
else if ((value) == '2') 
{ 
    p.style.display = 'none'; 
    r.style.display = 'none'; 
    u.style.display = ''; 
    m.style.display = 'none'; 
    t.style.display = ''; 
} 
if ((value) == '3') 
{ 
    p.style.display = 'none'; 
    r.style.display = 'none'; 
    u.style.display = ''; 
    m.style.display = ''; 
    t.style.display = ''; 
} 

} 
</script> 

コードは、ページをリロードする(呼び出すときにドロップダウン2):

function reload(form) 
{ 

var val=form.utm.options[form.utm.options.selectedIndex].value; 
var va2=form.gpotp.options[form.gpotp.options.selectedIndex].value; 
self.location='CrtGroup.php?utm=' + val +'&gpotp=' + va2 ; 

} 

ドロップダウン1:

<select name='gpotp' class='form-control' onmousedown=\"this.value='';\" onchange=\"jsFunction(this.value);\"> 
         <option disabled selected value> -- select an option -- </option>"; 
         if($stmt = $conn->query("$query3")) 
         { 
          while ($row2 = $stmt->fetch_assoc()) 
          { 
          if($row2['Group_ID'][email protected]$gpotp){echo "<option selected value='$row2[Group_ID]'>$row2[Group_Cat]</option>";} 
         else{echo "<option value='$row2[Group_ID]'>$row2[Group_Cat]</option>";} 
          } 
         }else 
         { 
         echo $conn->error; 
         } 
    echo"</select> 

ドロップダウン2:

echo"<select class='form-control' onchange=\"reload(this.form)\" name='utm' onmousedown=\"this.value='';\">"; 
         echo"<option disabled selected value> -- select an option -- </option>"; 

         if($stmt = $conn->query("$query2")) 
         { 
          while ($row2 = $stmt->fetch_assoc()) 
          { 
          if($row2['Group_ID'][email protected]$utm){echo "<option selected value='$row2[Group_ID]'>$row2[Tm_GroupID]</option>";} 
         else{echo "<option value='$row2[Group_ID]'>$row2[Tm_GroupID]</option>";} 
          } 
         }else 
         { 
         echo $conn->error; 
         } 

     echo"</select>"; 

ドロップダウン3。

echo"<select class='form-control' name='umn' >"; 
         echo"<option disabled selected value> -- select an option -- </option>"; 

         if(isset($utm) and strlen($utm) > 0){ 
         if($stmt = $conn->prepare("SELECT DISTINCT Mng_GroupID,Group_ID,Tm_GroupID FROM mnggroup where Tm_GroupID=? order by Mng_GroupID")) 
         { 
         $stmt->bind_param('i',$utm); 
         $stmt->execute(); 
         $result = $stmt->get_result(); 
         while ($row1 = $result->fetch_assoc()) { 
          echo "<option value='$row1[Group_ID]'>$row1[Mng_GroupID]</option>"; 
          } 

         }else{ 
         echo $conn->error; 
         } 

         ///////// 
         }else{ 
         /////// 
         $query="SELECT DISTINCT Mng_GroupID,Group_ID,Tm_GroupID FROM mnggroup order by Mng_GroupID"; 

         if($stmt = $conn->query("$query")){ 
          while ($row1 = $stmt->fetch_assoc()) { 

         echo "<option value='$row1[Group_ID]'>$row1[Mng_GroupID]</option>"; 

          } 
         }else{ 
         echo $conn->error; 
         } 

         } 

        echo"</select>"; 
+0

関連コードのみを投稿してください。 –

+1

ローカルストレージやCookieを追跡する必要があります。 –

+0

@DanPhilip私の質問は、私が投稿したこのすべてのコードと実際には関連しています。その部分が他のコードに影響を与える可能性があります。 –

答えて

0

window.nameを使用して、リロード後も持続するフラグを格納できます。

リンクはありませんが、ローカルストレージまたはクッキーの代わりに、ページの再読み込み後に必要なものを隠すロジックを実装するために使用できます。 Es .:

if (window.name === "hide") { 
    element.style.display = "none"; 
} 
+0

どのようにwindow.nameを使用するのですか? –

+0

https://www.w3schools.com/jsref/prop_win_name.asp –

関連する問題