[英]Passing two value in javascript
我是新手,所以我對依賴下拉菜單有疑問。
我有兩個下拉菜單,第一個是休假類型,第二個是可用余額。
下面顯示了js和表單。
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#parent_cat").change(function() {
$(this).after('<div id="loader"><img src="img/loading.gif" alt="loading subcategory" /></div>');
$.get('loadsubcat.php?parent_cat=' + $(this).val(), function(data) {
$("#sub_cat").html(data);
$('#loader').slideUp(200, function() {
$(this).remove();
});
});
});
});
$sql = mysql_query("SELECT * FROM leaves WHERE emp_id=$emp_id'");
<form method="get">
<label for="category">Leave Type</label>
<select name="parent_cat" id="parent_cat">
<option> Select one </option>
<?php
if ($row['leave_al'] == 1)
{
echo "<option value='Annual Leave'> Annual Leave </option>";
}
if ($row['leave_matl'] == 1)
{
echo "<option value='Maternity Leave'> Maternity Leave </option>";
}
?>
</select>
<label>Available Balance</label>
<select name="sub_cat" id="sub_cat"></select>
</form>
loadsubcat.php
<?php
$parent_cat = $_GET['parent_cat'];
$emp_id = $_GET['emp_id'];
$query = mysql_query("SELECT * FROM leaves WHERE emp_id = 'OR9090'");
$row = mysql_fetch_array($query);
if ($parent_cat == 'Annual Leave')
{
echo "<option value='$row[id]'>$row[total_annual]</option>";
}
if ($parent_cat == 'Maternity Leave')
{
echo "<option value='$row[id]'>$row[maternity_days]</option>";
}
?>
上面的示例將parent_cat傳遞給loadsubcat以便加載可用余額。 我還想將$ emp_id傳遞給loadsubcat,以便sql可以基於$ emp_id進行讀取。 現在,我只能手動分配emp_id。 請幫我謝謝!
您可以嘗試以下操作:
<form method="get">
<input type="hidden" name="emp" value="<?php echo $emp_id ?>"/>
<label for="category">Leave Type</label>
<select name="parent_cat" id="parent_cat">
將emp_id放在隱藏的輸入上,然后在jquery更改上獲取值
$("#parent_cat").change(function() {
var emp = $(this).siblings('input[name=emp]').val(); (...)
然后完成與德雷克說。
$.get('loadsubcat.php?parent_cat=' + $(this).val() + '&emp_id=' + emp, function(data) {
哦,要小心loadsubcat.php中的GET變量,請使用mysql_real_escape_string或PDO保護SQL注入。
我也想將$ emp_id傳遞給loadsubcat
要將另一個參數添加到loadsubcat.php
查詢字符串,可以更改
$.get('loadsubcat.php?parent_cat=' + $(this).val(), function(data) {
至
$.get('loadsubcat.php?parent_cat=' + $(this).val() + '&emp_id=' + $("...").val(), function(data) {
其中$("...").val()
是某個HTML標記中員工ID值的位置,然后在您的PHP文件中,您可以使用下面的代碼訪問它們:
$parent_cat = $_GET['parent_cat'];
$emp_id = $_GET['emp_id'];
我的代碼現在可以使用了! 我已經改變了
var emp = $(this).siblings('input[name=emp]').val();
至
var $form = jQuery(this).closest('form');
var emp = $form.find("input[name='emp']").val();
上面給出的其余代碼工作正常!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.