JqueryAjax形式select改变div淡出错误
Jquery Ajax form select change div fadeout error
我是 ajax 的新用户,我在 div 功能上遇到了一些小问题。
这是我的代码:
$(document).ready(function() {
$('select.age').change(function(){
$.ajax({
type: 'POST',
url: 'change_age.php',
data: {selectage: $('select.age').val(), projectId: $('input[name$="projectId"]').val()},
dataType: 'html',
success: function()
{
$("#msg_age").html('<span style="color: #00BB00;">Changement OK</span>').fadeOut(4000);
}
});
});
});
我的表单页面test.php
<form action="#" method="post">
<label for="age">Votre Age</label>
<select class="age" name="age">
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="26">26</option>
</select>
<input class="projectId" type="hidden" name="projectId" value="1"/>
<div id="msg_age"></div>
</form>
我的change_age.php
<?php
$query=mysql_connect("localhost","user","pass");
mysql_select_db('database',$query);
$selectage=$_POST['selectage'];
$id=$_POST['projectId'];
$sql='UPDATE tests SET name="'.$selectage.'" WHERE id="'.$id.'"';
mysql_query($sql) or die("Error: ".mysql_error());
?>
当我第一次进入表格时,我更改了一个选项,更改没问题,我等待 4 秒 div 淡出。
当我 select 另一个 select 时,什么也没有出现,我必须刷新页面..
如果另一个 select 被 selected,我想再次显示带有淡出的消息。
有人有想法吗?
非常感谢:)
在这种情况下,我会在您的模板中为通知创建跨度,给它自己的 ID,并在需要时 .fadeIn()
/.fadeOut()
它。
更少 DOM 操作和更好的性能。
因此,您的代码将如下所示:
...
success: function() {
$("#msg_age").fadeIn(150).fadeOut(4000);
}
其次,长时间淡出看起来不太友好,我最好使用.delay()
...
success: function() {
$("#msg_age").fadeIn().delay(4000).fadeOut();
}
我是 ajax 的新用户,我在 div 功能上遇到了一些小问题。
这是我的代码:
$(document).ready(function() {
$('select.age').change(function(){
$.ajax({
type: 'POST',
url: 'change_age.php',
data: {selectage: $('select.age').val(), projectId: $('input[name$="projectId"]').val()},
dataType: 'html',
success: function()
{
$("#msg_age").html('<span style="color: #00BB00;">Changement OK</span>').fadeOut(4000);
}
});
});
});
我的表单页面test.php
<form action="#" method="post">
<label for="age">Votre Age</label>
<select class="age" name="age">
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="26">26</option>
</select>
<input class="projectId" type="hidden" name="projectId" value="1"/>
<div id="msg_age"></div>
</form>
我的change_age.php
<?php
$query=mysql_connect("localhost","user","pass");
mysql_select_db('database',$query);
$selectage=$_POST['selectage'];
$id=$_POST['projectId'];
$sql='UPDATE tests SET name="'.$selectage.'" WHERE id="'.$id.'"';
mysql_query($sql) or die("Error: ".mysql_error());
?>
当我第一次进入表格时,我更改了一个选项,更改没问题,我等待 4 秒 div 淡出。 当我 select 另一个 select 时,什么也没有出现,我必须刷新页面.. 如果另一个 select 被 selected,我想再次显示带有淡出的消息。
有人有想法吗?
非常感谢:)
在这种情况下,我会在您的模板中为通知创建跨度,给它自己的 ID,并在需要时 .fadeIn()
/.fadeOut()
它。
更少 DOM 操作和更好的性能。
因此,您的代码将如下所示:
...
success: function() {
$("#msg_age").fadeIn(150).fadeOut(4000);
}
其次,长时间淡出看起来不太友好,我最好使用.delay()
...
success: function() {
$("#msg_age").fadeIn().delay(4000).fadeOut();
}