我使用JavaScript在页面上加载了一个下拉列表(本来不是该页面上的),但没有问题,但是我想在下拉列表的选定值更改后更新数据库表,因此我正在使用脚本:
<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();
}
?>
最佳答案
你没有问一个问题。
无论如何,this.val()
可能会引发异常。
尝试$(this).val()
更新:
尝试
$(document).on('change', '#dropd1', function(){
var value = $(this).val();
$.post('listener_updates.php', {categ: value});});
});
这将为动态添加的DOM元素创建一个事件侦听器。