我有一个jquery/ajax表单,有event.preventDefault()
。问题是,一旦我按下回车键,我的输入字段不会变为空。通常当你在输入栏中按下enter键时,它会在表单中执行"动作",然后输入栏将清空。但是现在当我输入一些东西时,当我按回车键时,我的表单不会重置为空。我知道event.preventDefault()不做正常的"动作"的形式,但我试图不刷新我的页面,只是使用ajax,所以它会加载没有页面刷新。
-------------------- jquery -------------------- ( 下图)
$('[placeholder]').parents('form').submit(function(event) {
$(this).find('[placeholder]').each(function() {
var input = $(this);
if (input.val() == input.attr('placeholder')) {
input.val('');
}
});
var input = $('input.sel').val();
dataList = 'list=' + input;
$.ajax({
type: "POST",
url: "ajax_table_edit.php",
data: dataList,
cache: false,
success: function(html)
{
$('.selector').html(data);
}
});
event.preventDefault();
});
--------------- ajax_table_edit.php ----------- ( 下图)
if(isset($_POST['list'])){
$list = $_POST['list'];
$id = $_POST['id'];
$id = ereg_replace("[^0-9]", "", $id);
$sql = mysql_query("INSERT INTO table (column) VALUES ('".$list."')");
echo "success";
}
在同一时间。我试着模仿成功,但这也行不通。有人能帮我找出解决这个问题的方法吗?
感谢您的宝贵时间!您必须自己用jQuery: $("#field").val='';
空白字段
它没有输出你的信息,因为你没有抓住成功的正确变量。你把它定义为HTML,这可能是保留的…试着把它叫做data,因为这就是你在函数内部使用的。
...
success: function(data)
{
$('.selector').html(data);
}
...
还有,为什么你在php端有$id
代码?看起来都没用过。而且,仅仅因为它的ajax并不意味着您可以安全地避免SQL注入,所以您需要对$_POST['list']
变量进行消毒。