2016-09-20 82 views
0

如何在數據庫中添加jQuery中的<option>。例如:附加<option>並從數據庫中選擇值

<?php 
    $sql = "query from database"; 
    $result = mysqli_query($conn, $sql); 

    if (!$result) 
    { 
     die(mysqli_error($conn)); 
    } 

    if (mysqli_num_rows($result) > 0) 
    { 
     while ($row = mysqli_fetch_assoc($result)) 
     { 
      $name = $row['name']; 
      $id = $row['id']; 
     } 
    } 
?> 
<select name="selector" id="selector"> 
    <option value="0">Make Selection</option> 
</select> 

我希望值從數據庫附加到select框。我試着用下面的代碼,但結果是空白的。

$('#selector').find('option').append('<option value="<?php echo $id; ?>"><?php echo $name;?>'); 
+0

請顯示您的完整代碼。我希望你使用ajax。 –

+0

刪除'.find('option')' –

+0

感謝@RoryMcCrossan的幫助。如何顯示超過1個結果的值?我是否需要在追加的while循環中插入? – Amran

回答

3
<select name="selector"> 
      <option value="0">Make Selection</option> 
    <?php 
     $dd_res=mysql_query("Select DISTINCT designation from emp"); 
     while($r=mysql_fetch_row($dd_res)) 
     { 
       echo "<option value='$r[0]'> $r[0] </option>"; 
     } 
    ?> 
</select> 
+0

我可以知道如何將它附加到jquery中嗎? – Amran

+0

你可以用@venkey代碼 –

+0

有沒有ajax的方法? – Amran

0
$('#selector').append('<option value="<?php echo $id; ?>"><?php echo $name;?></option>'); 

通過Ajax調用

_.forEach(mem, function(obj) { 
    content += "<option value="+obj.id+">"+obj.name+"</option>"; 
}); 
$('#selector').append(content); 
2
$('#selector').append('<option value="<?php echo $id; ?>"><?php echo $name;?></option>'); 
+0

感謝您的幫助,但如果我必須顯示超過1個結果的值。可以使用append來完成 – Amran

+0

是的,你可以把它放在while循環中 – manu

0
<script type="text/javascript"> 
$(document).ready(function(){ 
$.ajax({ 
      type:'POST', 
      url:'DropdownValues.php', 
      data: ,    // if you want to pass data u can use this line or else remoce the line 
      success:function(response){ 
       var select = $('#selector'); 
      select.find('option').remove(); 
      $.each(response, function(index, value) { 
      $('<option>').val(value).text(value).appendTo(select); 
      } 
     }); 
}); 

這款U擁有jQuery函數寫THWN你會得到的值和追加不會爲這方面的工作方法。你必須使用appendTo函數。

+0

對不起,但是如何應用這個函數? – Amran

相關問題