function getMeta() {
var img = new Image();
var verif = true;
img.onload = function() {
if (this.width != 468 && this.height != 60) {
alert('error : only these image sizes are accepted : 468x60');
return false;
} else
alert('loaded successfully');
};
img.onerror = function() {
alert('error : this is not a valid image');
return false;
};
img.src = document.getElementById('t1').value;
return true;
}
<form action="https://www.paypal.com/cgi-bin/webscr"
method="post" target="_blank" id="form1"
onsubmit="return getMeta();">
機能img.onload私は真または偽の戻り値を必要とするもの を返さない(trueまたはfalse)何も返しません。
フォームのonsubmitで戻り値を使用します。 誰でも助けてくれますか?
'.onload'が将来的にそれがシステムによって呼び出されたいくつかの時間を意味し、あなたはそれから戻っ任意の値が戻ったばかりのシステムにではなく、独自のコードに入る非同期であります。 – jfriend00
私はコールバックを使用しようとしましたが、それは私のためには機能しません..しかし、私は自分のコードのためのソリューションが必要です。あなたが私を助けることができれば、私は素晴らしいことになるでしょう。ありがとう –
@Oriol - このポストはこの特定の問題を解決する方法を説明していないため、このポストの真っ直ぐな複製ではありません。はい、非同期コールバックの結果をコールバックまたは約束で返すことができない理由を説明していますが、非同期フォームの送信にソリューションを適用する方法については説明していません。私はもともとこれを二重引用符としてマークし、さらにコメントフォームにOPは、他の答えがこの問題を解決する方法を説明していないことを認識して再オープンしました。再開する必要があります。その他の投稿は、このOPのための完全な答えを提供するつもりはありません。 – jfriend00