jquery
  • html
  • 2012-05-04 78 views 1 likes 
    1

    在這段代碼中,我沒有找到解決方案如何讓table1與數據。當table2刷新table1的數據後顯示消失!我怎樣才能解決這個問題 ?當頁面刷新時,表單的數據消失

      <?php 
    $menucompare=""; 
    if (isset($_POST["menucompare"])) 
    { 
    $menucompare= $_POST['menucompare']; 
    $table1 = ' 
             <table id= "Table1" width="100%" border="1" cellspacing="0" cellpadding="0"> 
                 <!--SW - You need a tr tag around these headers--> 
                 <th >Weeks</th> 
                 <th ><p></p></th> 
                 <th > More Details</th> 
    
    
                 <tr id="tr"> 
    
                   <tr id= "tr " > 
                    <td >gggg</td> 
                    <td >kkkkk</td> 
                    <td > 
                         <form name ="dets" method="POST" action=""> 
                           <input class = "showt" name ="wnumber" id ="wnumber" type="submit" value= "More Details" /> 
                           <input type="hidden" name="data" value="wnumber" /> 
    
                            <noscript> 
                           <input type="submit" value="Submit"/> 
                            </noscript> 
                         </form> 
                       </td> 
                   </tr> 
                 </tr> 
               </table> '; 
    } 
    else if (isset($_POST["data"])) 
    { 
         // put whatever db process you need somwhere in this if statement 
    
         $table1 = ' 
             <table id= "Table1" width="100%" border="1" cellspacing="0" cellpadding="0"> 
                <!--SW - You need a tr tag around these headers--> 
                <th >Weeks</th> 
                <th ><p></p></th> 
                <th > More Details</th> 
    
    
                <tr id="tr"> 
    
                  <tr id= "tr " > 
                   <td >gggg</td> 
                   <td >kkkkk</td> 
                   <td > 
                        <form name ="dets" method="POST" action=""> 
                          <input class = "showt" name ="wnumber" id ="wnumber" type="submit" value= "More Details" /> 
                          <input type="hidden" name="row_id" value="value of row id" /> 
                          <input type="hidden" name="data" value="wnumber" /> 
    
                           <noscript> 
                          <input type="submit" value="Submit"/> 
                           </noscript> 
                        </form> 
                      </td> 
                  </tr> 
                </tr> 
              </table> '; 
    
    
         $table2 = ' 
              <div id="Table2"> 
                <table width="100%" border="1" cellspacing="0" cellpadding="0"> 
                  <tr> 
                    <th id="wekkNum"> wnumber</th> 
                    <th>Your place</th> 
                    <th>Your arr</th> 
                  </tr> 
    
                  <tr > 
                    <td>hhhh</td> 
                    <td>kkkk</td> 
                    <td>jjjj</td> 
                  </tr> 
    
                </table> 
              </div>    
            ';     
    } 
    ?> 
    
    <script src="http://code.jquery.com/jquery-latest.js"></script> 
    <script type="text/javascript"> 
         /*Start Functions*/ 
         function displayVals() { 
           var singleValues = $("select option:selected").text(); 
           $("#hiddenselect").val(singleValues); 
           $("p").html("Procent of : &nbsp &nbsp" + singleValues); 
         } 
         /*End functions*/ 
    
         /*Start Ready*/ 
         $(document).ready(function(){ 
           $("select").change(function() { 
             displayVals(); 
           }); 
         displayVals(); 
    
           $("select#menucompare").change(function() { 
             $("#aform").submit(); 
           }); 
        }); 
         /*End Ready*/ 
    </script> 
    <form id="aform" method="post"> 
         <select id="menucompare" name ="menucompare" size="1" onchange="submitaform()"> 
           <option selected='selected'>Select one</option> 
           <option value="value1" <?php if ($menucompare == "value1") { echo " selected='selected'"; } ?> >Text 1</option> 
           <option value="value2" <?php if ($menucompare == "value2") { echo " selected='selected'"; } ?> >Text 2</option> 
           <option value="value3" <?php if ($menucompare == "value3") { echo " selected='selected'"; } ?> >Text 3</option> 
           <option value="value4" <?php if ($menucompare == "value4") { echo " selected='selected'"; } ?> >Text 4</option> 
    
         </select> 
         <input type="hidden" name="hiddenselect" value="<?php echo $menucompare ; ?>" />  
    </form> 
    <?php 
    if (isset($table1)) 
    { 
         print $table1; 
    } 
    if (isset($table2)) 
    { 
         print $table2; 
    } 
    ?> 
    

    這是我的整個代碼。 希望有解決這個問題,我看過所有帖子,但沒有類似的問題。

    回答

    1

    $ _POST值僅在緊接表單提交後的頁面上可用。

    通過多個頁面保持用戶輸入的簡單方法是將其作爲隱藏的表單域傳遞。

    所以,你會一個隱藏的表單字段添加到您的「限定詞」的形式:

    <input type="hidden" name="menucompare" value="'. $menucompare.'" /> 
    

    而且,你必須得到線擺脫了「其他」 37

    else if (isset($_POST["data"])) 
    

    if (isset($_POST["data"])) 
    

    Try this

    +0

    waw,非常感謝它正是我想知道的,它現在的作品:)謝謝 –

    3
    /*Start Ready*/ 
    $(document).ready(function(){ 
        $("select").change(function() { 
         displayVals(); 
        }); 
        displayVals(); 
    

    這第二displayVals();在這個代碼片段,一旦頁面加載,這是我想到的是,因爲在頁面加載目前尚無您選擇的錯誤的原因觸發。

    由於您的內嵌樣式爲<div id="Table2" style="display:none;">,因此您的table2將不會在頁面加載或頁面刷新(這只是強制頁面加載)時顯示。與期望保留選擇選項類似的問題...如果頁面刷新,它將被重置爲默認狀態,因此沒有選擇的選項。

    +0

    但我在jquery'$(「#Table2」)。show(); '顯示tabl2。如果你看到table1工作良好,即使刷新沒有disapear選擇選項。 –

    +0

    您的'$(「#Table2」)。show();'在點擊事件中,因此它不會在頁面加載時觸發。 「如果你看到table1工作良好,即使刷新並沒有消除選擇選項。」 ...對不起,但我不明白你說的那句話。 – redlena

    +0

    我的意思是table1的作品很好,即使在頁面刷新時,table1也不會丟失其數據。但是當點擊table1裏面的按鈕時,頁面會刷新然後消失一切。 –

    相關問題