1
所以我在類似的問題上看到了很多答案,但沒有找到如何正確地使它工作。 我在查詢中有很多函數,並且它們都沒有完成,因爲html事件加載了下一頁。所以我需要的是如何使html事件等到jquery檢查它應該檢查的所有內容。從html中調用jquery函數而不會阻止默認值
這樣例子的jQuery
jQuery.noConflict();
jQuery(document).ready(function($) {
$(document).on("click","input[name=open]", function() {
var login = $("input[name=field1]").val();
var pas = $("input[name=field2]").val();
alert('I call it');
$.post("index.php", {
st: 1,
field1: field1,
field2: field2
}, function(data) {
alert(data);
if ($.trim(data) == 'er') {
alert("Sorry incorrect data");
return false;
}
else
return true;
});
});
});
<div>
<form method="POST" action="index.php?cd=in">
<!----code here --->
<div>
<input name="open" class="field_submit" type="submit" size="7" value="IN" ">
</div>
因此,當有不符合action="index.php?cd=in"
行功能工作正常。那麼發生什麼事就是啓動這個函數,但是沒有等待結果並做重定向。因此,有幾個方面,我怎麼能阻止它:
- 重定向的jQuery,但它不是我所需要
- 是使HTML文件上的標籤輸入事件
onclick="return function-name();"
但問題如何正確實現jquery文件的功能,因爲當我把該功能放在控制檯中給我一個錯誤,因爲我的功能沒有定義。所以問題在於如何在jquery文件中正確實現它爲HTML文件中的onclick事件工作的功能。或者如果你知道其他更好的變體來實現它。由於
什麼關於HTML文件?一些onclick事件? –
@alex_mike我不明白你的意思?!哪個'onclick'事件?編輯:我編輯回答,因爲'this.submit();'必須'self.submit();'。它可以是'this.submit(); ''只有當傳遞'context:this,'作爲ajax請求的選項時,不可能使用簡寫'$ .post()'方法 –
糟糕,我忘記防止默認行爲,現在再次檢查:'function(e ){e.preventDefault(); ...});' –