0

我有一个 HTML 页面

<form id="customer">    
<label for="customer-name">Enter customer names: </label>
<input type="text" id="customer-name"/>
<input type="submit" value="Submit"/>
</form>

此 HTML 页面的 URL 是http://www.example.com/customer。当我提交表单时,我想使用 ajax GET 到以下 URL:

http://www.example.com/customer/query?customer-name=davis

ajax代码如下:

$(document).ready(function() {
    $("#customer").submit(function() {
    $.ajax({
        url: 'customer/query',
        type: 'GET',
        data: $("#customer-name").val(),
        success: function(data) {
        alert(data);
        }
    });
    });
});

但是当我在文本框中输入“davis”并单击“提交”按钮时,它转到了以下 URL(没有/query子路径):

http://www.example.com/customer?customer-name=davis

所以它没有转到我想要的正确 URL 地址。即使我在 Ajax 请求中指定了 URL,它也只会转到/customer路径,而不是/customer/query子路径。如何使 ajax GET 到正确的 URL 地址?还是我在代码中犯了一些错误?

4

1 回答 1

1

您的表单可能正在提交。尝试这个

$(function() {
  $("#customer").submit(function(e) {
     e.preventDefault();
     $.get('customer/query',{"customer-name":$("#customer-name").val()},
       function(data) {
        alert(data);
       }
     );
  });
});

上面的代码用于从服务器获取数据,而无需将新页面加载到浏览器中。

据我了解,您想删除所有 javascript 并简单地更改为

<form action="customer/query"> 
  <label for="customer-name">Enter customer names: </label>
  <input type="text" id="customer-name" name="customer-name"/>
  <input type="submit" value="Submit"/>
</form>
于 2013-10-27T20:09:09.107 回答