我有一个下载列表使用javascript(最初不在页面上)加载到页面上,它加载没有问题,但是我想要在下拉列表的选定值发生变化时更新数据库表,我' m使用这个脚本:
<select name = "categ" id="dropd1"><option> .... </option></select>
<script>
$( "#dropd1" )
.change(function () {
var value = this.val();
$.post('listener_updates.php', {categ: value});});
</script>
listener_update.php包含更新数据库的脚本:
<?php
if($_POST && $_POST['categ']){
connectMaBase();
$sql ='UPDATE produit SET categorie = "'.$_POST['categ'].'" WHERE num_prod ='.$_SESSION['num_prod'];
$req = mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error());
mysql_close();
}
?>
答案 0 :(得分:1)
无论如何,this.val()
可能会抛出异常。
尝试$(this).val()
<强>更新强>
试
$(document).on('change', '#dropd1', function(){
var value = $(this).val();
$.post('listener_updates.php', {categ: value});});
});
这将为动态添加的DOM元素创建一个事件监听器。