Javascript Ajax调用导致页面重新加载

Javascript Ajax调用导致页面重新加载,javascript,ajax,reactjs,Javascript,Ajax,Reactjs,我在React方法中有以下AJAX调用: handleActivitySubmit: function handleActivitySubmit(activity, urlActivity, callbackMy) { console.log("making query with activity: " + JSON.stringify(activity)); $.ajax({ url: urlActivity, dataType: 'json',

我在React方法中有以下AJAX调用:

  handleActivitySubmit: function handleActivitySubmit(activity, urlActivity, callbackMy) {
    console.log("making query with activity: " + JSON.stringify(activity));
    $.ajax({
      url: urlActivity,
      dataType: 'json',
      type: 'GET',
      data: activity,
      success: function (data) {
        callbackMy(Object.keys(data));
      }.bind(this),
      error: function (xhr, status, err) {
        console.error(urlActivity, status, err.toString());
      }.bind(this)
    });
  },
无论何时调用失败,整个页面都将重新加载,所有状态都将丢失


为什么会这样?

您的HTML表单必须将表单提交到
action=url
。这是处理表单的默认方式,即,如果单击元素
,它将始终重新加载浏览器。您需要在处理程序中使用
event.preventDefault()
,以阻止默认操作

获取表单提交上的click事件作为
handleActivitySubmit
的最后一个参数,即

handleActivitySubmit: function handleActivitySubmit(activity, urlActivity, callbackMy, event) {
  event.preventDefault();
  // your remaining code
  }