submit()を使用してフォームを送信したいが、実際には匿名関数を使用しないでsubmit()を使用するとうまくいく。 (古い男のせいで、jQueryとgetElementsByTagNameのを混合して申し訳ありません)匿名関数を使用するとjquery submit()が機能しない
var uform = $('#createItem1');
if(uform[0]) {
// UI's first validation image extension before server-side
var _validFileExtensions = [".jpg", ".jpeg", ".gif", ".png"];
var arrInputs = uform[0].getElementsByTagName("input");
for (var i = 0; i < arrInputs.length; i++) {
var oInput = arrInputs[i];
//Checks if image is of valid extension
if (oInput.type == "file"){
var sFileName = oInput.value;
if (sFileName.length > 0) {
var blnValid = false;
for (var j = 0; j < _validFileExtensions.length; j++) {
var sCurExtension = _validFileExtensions[j];
if (sFileName.substr(sFileName.length - sCurExtension.length, sCurExtension.length).toLowerCase() == sCurExtension.toLowerCase()) {
blnValid = true;
// this works fine
$('#createItem1').submit();
break;
}
}
if (!blnValid) {
alert("Sorry, " + sFileName + " is invalid, allowed extensions are: " + _validFileExtensions.join(", "));
$('a#linkStep1').trigger('click');
return false;
}
}
}
}
}
return false;
ここでも、できるだけ早く私は、現在を交換しようとして、このような無名関数は、それはこれが私のコードである
$('form').submit(function() {
alert("alert never shows up :(");
});
を動作を停止しますこのようなものをsubmit()すると、動作が停止する
$('#createItem1').submit(function() {
alert("something");
});
何が問題なのでしょうか?
$( '#createItem1')に切り替えてください。trigger( 'submit'); '代わりに – OptimusCrime
ここで何を達成しようとしていますか?なぜ、匿名関数をサブミットトリガーに渡す必要がありますか?フォームが正常に送信されたら、匿名関数を呼び出すことをお勧めしますか?その場合は、ajaxリクエストが必要です。 – matdumsa