我正在使用ajax来更新数据库并使用新文件夹,但它在命中ENTER后刷新页面。 在我的表单上我有onkeypress="if(event.keyCode==13) savefolder();"
这里是我有的javascript代码:它的功能基本上是在你点击后输入它调用函数savefolder,保存文件夹,然后通过ajax发送一个请求将文件夹添加到数据库。问题是刷新页面...我希望它保持在同一页面上。 有什么建议吗?谢谢。在点击ENTER后刷新页面
<script>
function savefolder() {
var foldername= jQuery('#foldername').val(),
foldercolor= jQuery('#foldercolor').val();
// ajax request to add the folder
jQuery.ajax({
type: 'get',
url: 'addfolder.php',
data: 'foldername=' + foldername + '&foldercolor=' + foldercolor,
beforeSend: function() { alert('beforesend');},
success: function() {alert('success');}
});
return false;
}
</script>
为什么你有'e'声明两次的时间(在'doc.ready()'和'作为window.event')和'回报假;'在'savefolder()'末尾应该(我想)取消表单提交,如果这是它的附加方式。你发布的内容没有严格意义(doc.ready()'块的末尾在哪里?)。 – 2012-02-19 02:57:02
另外,* ajax *不会执行往返;你的'submit'处理程序不会取消'submit'事件的是事实。我还没有看到像你一样的方法(也许它是IE特有的?),我没有看到你声明'submit'处理程序的位置。 – 2012-02-19 02:59:33
@JaredFarrish他在窗体标签上定义了一个“inline onkeypress”事件... – xandercoded 2012-02-19 03:01:27