我有一个下拉列表,其中列出了从数据库中提取的值
echo "<select name='training_name' id='training_name' value='' class='form-control' onchange='tr_name()' required><option value=''>Select</option>";
while($r = mysql_fetch_array($result)) {
$dt=date("Y-m-d",strtotime($r['date']));?>
<option value="<?php echo $r['nomination_form_trainer_id'];?>" ><?php echo $r['training_title']."(".$dt.")";?></option>;
<?php }?>
<?php echo "</select>";
我的输入类型为文本框
<input type="text" class="form-control txtOnly" id="trainer_name" name="trainer_name" value="" required/>
我的ajax代码如下
<script type="text/javascript">
function tr_name()
{
var tname= $('#training_name').val();
var dataString = 'tname=' + tname;
$.ajax({
type: "POST",
url: "training_name.php",
data: dataString,
success: function(result){
$("#trainer_name").html(result);
}
});
}
</script>
这是我的training_name.php的php代码
<?php require_once 'includes/config.php';
$training_name = $_POST["training_name"];
mysql_select_db("ptlct_training");
//here, you should test whether employee_detail matches what you expect
//here, split $employee_detail into $first_name, $last_name and $company_name
//now you are ready to send the MYSQL query:
$sql = 'SELECT initiator_name FROM nomination_form_trainer WHERE nomination_form_trainer_id=2';
$result = mysql_query($sql);
//since you expect a single matching result, you can test for num_rows == 1:
while ($row =mysql_fetch_array($result)) {
$trainer_name = $row['initiator_name'];
}
echo $trainer_name;
?>
我正在尝试获取我刚接触ajax的值,所以我无法找到我的错误。有人请尽快帮助我。谢谢提前
答案 0 :(得分:0)
var dataString = '&tname=' + tname;
检查param是否通过php传递.....!
答案 1 :(得分:0)
我自己找到了答案
<script type="text/javascript">
$("#training_name").change(function(){
{
var tname = $('#training_name').val();
var dataString = 'tname=' + tname;
$.ajax({
type: "POST",
url: "training_name.php",
data: dataString,
success: function(result){
$("#trainer_name").val(result);
}
});
}
});
</script>
我在函数内声明了变量,这就是参数没有正确传递的原因