[英]Using ajax and updating the database on the same url?
我有一個帶有選擇標記的表單,其中包含1-31的數字。 我想做的是如果用戶更改了select標簽中的值(默認值是數據庫中的值,即$drop_d
)來更新數據庫,而$drop_d
沒有重新加載頁面。 以下代碼似乎無效,我認為我將數據發送到ajax的方式存在問題。
此變量包含默認值:
$drop_d = $e_r[drop_d];
表格:
<form> Number of days: <select name="dropD" id="dropID"> <?php for($i=1; $i<=31; $i++){ ?> <option value="<?php echo $i;?>" <?php if($i==$drop_d){ ?> selected="selected" <?php } ?> > <?php echo $i; } ?> </select> </form> <br />
阿賈克斯:
<script>
$('#dropID').change(function(){
alert(1);
var url = document.URL;
var blah = $('#dropID').val()
alert(blah);
alert(url);
$.ajax({
type: 'POST',
url: url,
data: {newFieldValue: blah},
dataType: 'html'
}).done( function(){
alert(1);
blah.hide();
});
});
</script>
數據庫更新:
<?php
$newFieldValue = $_POST['newFieldValue'];
$updateD = 'UPDATE en SET drop_d = $newFieldValue WHERE name=$name;
mysql_query($updateD);
?>
$('select#dropID').on('change' , function(){
var url = document.URL;
var blah = $('select#dropID').val();
$.ajax({
type: 'POST',
url: url,
data: {newFieldValue:blah},
dataType: 'html'
});
});
您已經定義了id值id="dropID
,因此您的jQuery應該是:
$('#dropID').val()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.