2017-08-28 25 views
0

我正在使用註冊頁面,當用戶選擇其指定時,其相應的報表頭會在「報表頭」字段中動態選擇。我爲此使用了Ajax,但不知何故報告頭字段仍爲空。我能對此有所瞭解嗎?它將不勝感激。無法從一個選擇框中獲取相應的值

這裏去我的記錄域,

 <select name="designation" class="form-control" required="" id="desig" > 
      <option selected="selected" >Select your option</option> 
      <?php 
       $sql = mysql_query("SELECT id, designation FROM tbl_designation where id in (1,2,3,4)"); 
         while ($row = mysql_fetch_assoc($sql)){ 
      echo "<option value=" . $row['id'] . ">" . $row['designation'] . "</option>"; 
    } 
?></select> 

<select name="reporting_head" class="form-control" required="" id="rephead"> 
      <option selected="selected">Select your option</option> 
    </select> 

現在的JavaScript + AJAX是我申請,

$(document).ready(function() 
{ 
$("#desig").change(function() 
{ 
var id=$(this).val(); 
var dataString = 'id='+ id; 

$.ajax 
({ 
type: "POST", 
url: "ajax_rep.php", 
data: dataString, 
cache: false, 
success: function(html) 
{ 
$("#rephead").html(html); 
} 
}); 
}); 
}); 

最後我ajax_rep.php

<?php 

require("includes/config.php"); 
require("classes/Database.class.php"); 

if($_POST['id']) 
{ 
$id=$_POST['id']; 
$sql=mysql_query("SELECT reporting_head_id, reporting_head FROM `tbl_designation` WHERE id='$id'"); 
while($row=mysql_fetch_array($sql)) 
{ 
$id=$row['reporting_head_id']; 
$data=$row['reporting_head']; 
echo '<option value="'.$id.'">'.$data.'</option>'; 
} 
} 
?> 

這是HTML我正在取得阿賈克斯成功,

<div class="row row-offcanvas row-offcanvas-right"> 
<!--/.col-xs-12.col-sm-9--> 
<div class="col-sm-3 col-md-3 sidebar" id="sidebar"> 
    <div id="left_panel" class="clearfix left"> 
     <option value="6">Sales Head</option> 
+0

首先,不要使用'mysql_ *'功能。使用'mysqli_ *'函數。 '我'爲改進。 – Spectarion

+0

我不知道你爲什麼傳遞所有這些div標籤的數據,它似乎你的服務器端代碼是不正確的。無論如何,我可以在這個時候爲您提供一個臨時解決方案,但是您必須查看您的服務器端代碼。實際上,您的服務器端代碼應該返回只有這個 –

+0

@ArunprasanthKV是這是曖昧。我會刪除這個,所以只能通過這個,但無論如何,我正在得到所需的,但我怎麼能顯示它到所需的領域。 – Ansh

回答

0

試試這個在您循環而

$list = '<option selected="selected">Select your option</option>'; 


while($row=mysql_fetch_array($sql)) 
{ 
$id=$row['reporting_head_id']; 
$data=$row['reporting_head']; 
$list .= '<option value="'.$id.'">'.$data.'</option>'; 
} 
} 

echo $list; 

而且在你的Ajax成功功能做到這一點

success: function(html) 
{ 
    $("#rephead").html(""); 
    $("#rephead").append(html); 
} 
+0

感謝您的時間,但我可以知道您給出的while循環,但我需要將其放入ajax_rep.php或僅在我的註冊頁面 – Ansh

+0

對不起,它沒有顯示任何變化。還有其他的事情要做? – Ansh