簡體   English   中英

jQuery使用.load方法的下拉列表

[英]jquery using .load method for drop down list

我如何使用jQuery的ajax .load功能的dropdownlist?

這是我的PHP頁面

<? 
$query="SELECT Name FROM supplier";
$result=mysql_query($query);
?>
<select name="ddlSupplier">
<option>Supplier Name</option>
<? while($row=mysql_fetch_array($result)) { ?>
<option value><?=$row['Name']?></option>
<? } ?>
</select>

加載后如何獲得價值?

$("#ddlSupplier").val()? this.val()?

我沒有在其上調用.load()標記,因此我將使用#placeholder作為將下拉列表注入到的選擇器:

$('#placeholder').load('yourphppage.php', function(html) {
   $(this).find('select[name=ddlSupplier]').val();
});

請注意,在HTML插入之后將調用該回調,因此您可以執行find() 文件

如果提供了“完成”回調,則在后處理和HTML插入完成后執行該回調。 jQuery集合中的每個元素都會觸發一次回調,並將其依次設置為每個DOM元素。

您應該能夠像使用.val()所說的那樣得到它

$(function () {
     $("#ddlSupplier").on('change', function () {
         var value = $(this).val();
     });
});

幾個問題:

首先,在PHP中,您嘗試通過ID選擇下拉列表,但未設置下拉列表。 因此,添加了。 另外,您實際上並沒有為<option>提供值,因此也添加了該值。

<? 
$query="SELECT Name FROM supplier";
$result=mysql_query($query);
?>
<select id="ddlSupplier" name="ddlSupplier">
<option>Supplier Name</option>
<? while($row=mysql_fetch_array($result)) { ?>
<option value="<?=$row['Name']?>"><?=$row['Name']?></option>
<? } ?>
</select>

最后,在JS中,您需要獲取選擇選項的值,而不是select列表的值(因為select沒有值)。

$("#ddlSupplier option:selected").val()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM