javascript - 这些 POST 命令有什么区别?

标签 javascript jquery

它们有什么区别,我如何知道何时使用哪个?

$.post($(this).attr('action'), $(this).serialize(), function(response) {
    // do something here on success
}, 'json');

$.post($(this).prop('action'), $(this).serialize(), function(response) {
    // do something here on success
}, 'json');

$.post($(this).closest("form").prop('action'), $(this).serialize(), function(response) {
    // do something here on success
}, 'json');

最佳答案

在这种情况下,第一个和第二个是相同的。必须从表单事件处理程序调用这些函数。除了 $(this).prop/attr(),也可以使用 $(this)[0].actionthis.action使用过。

第三个方法查找最近的表单元素,并检索表单的 action 属性。该方法对于非形式上下文很有用,例如来自 button 元素。

关于javascript - 这些 POST 命令有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7471860/

相关文章:

将颜色名称转换为十六进制代码的 Javascript 函数

javascript - 带有 NodeJS 和 Jade 的 innerHTML

javascript - HTML 文档中脚本标签的位置 - <head> 和 <body> 具有不同的行为

javascript - 谷歌图表点颜色

javascript - jquery 在滚动上切换类

javascript - jQuery 代码中的基本问题

javascript - 使用 jQuery 更改下拉列表的选定值

javascript - 如何在 javascript 中打开子项时保留更改后的图像

javascript - 在 jquery Ajax 中使用多个引导按钮

javascript - 尝试在太空入侵者克隆中从左向右拖动 Canvas 上的飞船