javascript - JS 函数将 Javascript 返回给浏览器而不是预期的 Ajax post

标签 javascript ajax

我发誓这曾经有效。我正在尝试做面包屑。我在名为“breadcrumb”的全局命名空间中有一个 JS 函数。它接受一个字符串作为其唯一参数:

function breadcrumb(attr) {
  hash = { type: "POST", url: "brands/get_attributes", data: $("#attributeform").serialize() };
  $.ajax(hash);
  return false;
}

我在 HTML 页面上的面包屑链接定义如下:

<a href="javascript:breadcrumb(\'<%= brand_attribute.attributename %>\');"><%= value %></a>

到目前为止还不错。但是当我点击面包屑链接时,我在 URL 中得到了这个:

javascript:breadcrumb('Whirlpool');

还有一个带有“false”字样的空白页,这是函数返回的内容。我的问题是,为什么它实际上导航到 javascript 函数本身?为什么没有呈现 Ajax 结果?

最佳答案

使用 onclick 而不是 href。此外,我的强制症建议进行以下语法更改:

var hash = { //use braces to define an object
               type: "POST", 
               url: "brands/get_attributes", 
               data: $("#attributeform").serialize()
};

关于javascript - JS 函数将 Javascript 返回给浏览器而不是预期的 Ajax post,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13382000/

相关文章:

javascript - 函数式编程何时 curry

javascript - ReactJS 中相邻元素之间如何通信?

javascript - jQuery在ajax全局事件中注入(inject)数据

c# - 停止 ModalPopup Extender 弹出

javascript - 使用 JQuery 的登录页面

php - 如何使用 jquery ajax php 和 mysql 更新表中的数据

javascript - 使用 AJAX 加载原始图像数据

javascript - ManyChat Bot 未关闭,新 session 出现 2 个 Messenger 聊天

javascript - GraphStream:交互式 Web 应用程序

javascript - 如何在 HTML 中的 li 元素上创建右键单击自定义菜单