Select 框发送到 ajax 代码
Select box to send to ajax code
我一直在使用一段代码将数据添加到 mysql 数据库,使用 ajax.I 使用文本框添加数据可以完美运行,但我似乎无法理解通过用 select 框替换文本框来工作。
原文本框如下:
<form class="add-new-task" autocomplete="off">
<input type="text" name="new-task" placeholder="Add a new item..." />
</form>
这是我用以下代码替换的代码:
<form class="add-new-task" autocomplete="off">
<select name = "new-task">
<option value="test1">test1</option>
<option value="test2">test2</option>
</select>
<input type='submit' value='submit'/>
</form>
这里是接收码:
<script src="http://code.jquery.com/jquery-latest.min.js"></script>
function add_task() {
$('.add-new-task').submit(function(){
var new_task = $('.add-new-task input[name=new-task]').val();
if(new_task != ''){
$.post('add-task.php', { task: new_task }, function( data ) {
$('.add-new-task input[name=new-task]').val('');
$(data).appendTo('.task-list ul').hide().fadeIn();
delete_task();
});
}
return false; // Ensure that the form does not submit twice
});
}
function delete_task() {
$('.delete-button').click(function(){
var current_element = $(this);
var id = $(this).attr('id');
$.post('delete-task.php', { task_id: id }, function() {
current_element.parent().fadeOut("fast", function() { $(this).remove(); });
});
});
}
我认为这很简单,可能很简单,但我无法让它工作,
提前致谢。
(Bill - 感谢整理)
由于您将输入替换为 select,因此需要更改以下代码
$('.add-new-task input[name=new-task]').val();
这应该有效
$('.add-new-task select[name=new-task]').val();
我一直在使用一段代码将数据添加到 mysql 数据库,使用 ajax.I 使用文本框添加数据可以完美运行,但我似乎无法理解通过用 select 框替换文本框来工作。
原文本框如下:
<form class="add-new-task" autocomplete="off">
<input type="text" name="new-task" placeholder="Add a new item..." />
</form>
这是我用以下代码替换的代码:
<form class="add-new-task" autocomplete="off">
<select name = "new-task">
<option value="test1">test1</option>
<option value="test2">test2</option>
</select>
<input type='submit' value='submit'/>
</form>
这里是接收码:
<script src="http://code.jquery.com/jquery-latest.min.js"></script>
function add_task() {
$('.add-new-task').submit(function(){
var new_task = $('.add-new-task input[name=new-task]').val();
if(new_task != ''){
$.post('add-task.php', { task: new_task }, function( data ) {
$('.add-new-task input[name=new-task]').val('');
$(data).appendTo('.task-list ul').hide().fadeIn();
delete_task();
});
}
return false; // Ensure that the form does not submit twice
});
}
function delete_task() {
$('.delete-button').click(function(){
var current_element = $(this);
var id = $(this).attr('id');
$.post('delete-task.php', { task_id: id }, function() {
current_element.parent().fadeOut("fast", function() { $(this).remove(); });
});
});
}
我认为这很简单,可能很简单,但我无法让它工作, 提前致谢。
(Bill - 感谢整理)
由于您将输入替换为 select,因此需要更改以下代码
$('.add-new-task input[name=new-task]').val();
这应该有效
$('.add-new-task select[name=new-task]').val();