タイトルには、.JSファイルに1ブロックのJavascriptコードがあります。ここでは、x変数を変更する別のASCXファイルの関数を呼び出します。私はボタンがクリックされた場合、関数は(それがないもの)を実行だろう、という期待Javascriptコードブロックは、呼び出された関数の結果を戻す前に終了しますか?私は何が欠けていますか?
var x;
function Function(){
if(y > 100)
x = true
if(y < 100)
x = false
}
、変数になります。
私は変数と関数を持っているASCXファイルで$('#button').bind('click', function (event) {
Function();
if(x == true){do something}
if(x == false){do something else}
});
条件によって変化します(これも起こります)。しかし、コードは、コードが実行される前の状態のxの値を使用します。
ボタンがクリックされる前にxがtrueで、ボタンをクリックすると、yの条件に実際にxがfalseと評価されても、結果は常にtrueと評価されます。
なぜこれが起こっているのかわかりません。関数と呼び出しの両方が同じ場所にあるようにファイルをマージすることは、残念なことにオプションではありません。どんな入力も非常に高く評価されます。
敬具、ロブ
だから、 'y'は何ですか? – epascarello
Rayが言っているように、y値は何ですか? y値がなければ、xは決して更新されません。あなたはそれが2つの別々のファイルだと言いますが、両方のファイルはxとyの両方にアクセスできますか?また、関数 '関数'を呼び出さないでください。上書きする危険があります。 – Shilly