[英]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.