假設在html頁面中使用id爲「serialform」的表單。jquery this.attr(「action」)提交表單?
以下JavaScript按預期工作。
$("#serialform").submit(function(event) {
var action = $("#serialform").attr("action");
var serial = $("#serial").val()
...
return event.preventDefault();
});
但是,如果我取代函數的第一行用「這個」:
$("#serialform").submit(function(event) {
var action = this.attr("action");
var serial = $("#serial").val()
...
return event.preventDefault();
});
然後表單提交,而不是簡單地返回操作屬性。 this
引用表單元素(根據螢火蟲)。
我原以爲this
將相當於$("#serialform")
。無論如何,我想獲取正在提交的表單的action屬性。
我正在使用jQuery 2.0.3。
將'this.attr'替換爲'$(this).attr' – MackieeE
嘗試將'this'更改爲'$(this)'。 – j08691
因爲你得到錯誤「TypeError:undefined不是函數」或類似的東西。 [瞭解如何**調試** JavaScript](http://www.creativebloq.com/javascript/javascript-debugging-beginners-3122820)。請閱讀jQuery教程(http://learn.jquery.com/events/event-basics/)。它解釋了事件處理程序內部發生了什麼,以及「this」引用的內容。 –