我有一个AJAX函数,可以使用简单的select * ...将数据从数据库加载到div。该函数无需提交即可正常工作,但是当我使用表单时,它不起作用并且#itemContainer为空,我丢失了什么吗?我什至尝试过:

$(document).ready(function() {
  $("#myForm").submit(function() {

但也没用

我的代码:

<script id="source" language="javascript" type="text/javascript">
 $("#myForm").submit(function() {
   $.ajax({
     url: 'models/fetchUsers.php', //the script to call to get data
     dataType: 'json', //data format
     success: function(data) //on recieve of reply
       {
         $.each($(data), function(key, value) {
           $('#itemContainer').append(value.user_id);
         });
       }
   });
 });
</script>

最佳答案

您没有取消表单提交事件。

在您的提交中添加preventDefault()
像这样

$("#myForm").submit(function(event) {
  $.ajax({
    url: 'models/fetchUsers.php', //the script to call to get data
    dataType: 'json', //data format
    success: function(data) //on recieve of reply
      {
        $.each($(data), function(key, value) {
          $('#itemContainer').append(value.user_id);
        });
      }
  });
  event.preventDefault();
});

更新:
event.preventDefault()被描述。

尝试使用return false;
像这样
$("#myForm").submit(function(event) {
  $.ajax({
    url: 'models/fetchUsers.php', //the script to call to get data
    dataType: 'json', //data format
    success: function(data) //on recieve of reply
      {
        $.each($(data), function(key, value) {
          $('#itemContainer').append(value.user_id);
        });
      }
  });
  return false;
});

关于javascript - jQuery .append不适用于.submit,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39569658/

10-09 22:03