2016-02-19 110 views
1

我有一個腳本,它提供了從數據庫中提取的信息的幾種不同視圖。第一個顯示的是每月銷售給定產品的數量,第二個顯示銷售量,第三個顯示利潤,最後一個顯示利用利潤和銷售額計算的百分比。我目前使用查詢字符串來顯示這些信息,如下所示。使用下拉菜單刷新頁面

if(isset($_GET["reporttype"])){ 
    if($_GET["reporttype"] == "sales"){ 
     $isSalesView = true; 
    } 
    //Other types are handled here 
} 

我想要做的是實現一個下拉菜單,具有四種報告類型,並在選擇,改變了網址和刷新頁面,以反映選擇。我已經實現了菜單,我已經添加了一些JS代碼:

$("#reportType").live("change",function(){ 
    if($(this).val() && $(this).val()>0){ 
     <?php 
     if($isCustomerReport){?> 
      location.href = "merchsalestemp.php?customerid=<?php echo $customerID; ?>&monthlyview=" + $(this).val(); 
     <?php 
     }else if($isSingleItem){?> 
      location.href = "merchsalestemp.php?itemid=<?php echo $itemID; ?>&monthlyview=" + $(this).val(); 
     <?php 
     }else{?>        
      location.href = "merchsalestemp.php?monthlyview=" + $(this).val(); 
     <?php 
     };?> 
    } 
}); 

塊內的if語句是無關的手頭的事情其他用途的其他視圖。我已經嘗試在將完成的文件上傳到服務器後從菜單中選擇一個選項,但沒有任何反應。我能做些什麼來解決這個問題?唯一想到的是,我會在頁面頂部爲每個視圖實現鏈接,但我認爲這是一個糟糕的解決方案,看起來不太好。

編輯:我忽略了包括下拉菜單代碼。

<b>Select Report:</b> 
<select id="reportType" name="Option" style="width:250px; font-size:12px; margin-bottom:10px;"> 
    <option value="">Select report type</option> 
    <option value="quantity">Monthly quantity</option> 
    <option value="sales">Monthly sales</option> 
    <option value="profit">Monthly profits</option> 
    <option value="margin">Monthly gross margins</option> 
</select> 

回答

1

貌似問題是在你onchange處理程序:

if($(this).val() && $(this).val()>0){ 

你的價值不是數字,字符串( 「量」, 「銷售」 等)。試試這個:

if($(this).val() && $(this).val() !== ''){ 
+0

完美,這是做到了。 – user3521737