2017-04-06 12 views
0

私のコードは動作していませんが、最初はきれいなページで非常に単純なクリックイベントを作成しようとしましたが、jqueryは.htmlで動作しますXAMPPサーバー上で.phpを開きますが、クリックしたときに何もしませんが、最初の警告が表示されます。JQueryが.htmlで作業していますが.phpではありません

のindex.php

<html> 

<head> 

    <script src="js/jquery-3.2.0.min.js"></script> 

</head> 
<body> 

<?php include "includes/widgets/login.php"; ?> 

</body> 
</html> 

login.php

<script type="text/javascript"> 
$(document).ready(function() { 
    alert("Something"); 
    t = clicked(); 
    $('#login').click(function() { 
     alert("Login Alert!"); 
    }); 
    function clicked() { 
     alert("I was clicked!"); 
    } 
}); 
</script> 

<input type="button" value="Login" id="login" onclick="clicked()"> 
+0

も –

+0

をご 'login.php'のコードを貼り付け、今、それを編集しました。遅れて申し訳ありません。 – Siege21x

+0

@ Siege21xあなたはhtmlページにPHPページを追加したようですか?もしそれがwotkでないならば、 –

答えて

2

機能がクリックされた場所(); document.ready()の外部にあります。

+0

ありがとうございました。しかし、それは私のコンピュータに問題があるようです:私は、ボタンをクリックするとコンソールにメッセージを送信しようとしましたが、ログに届きますが、メッセージボックスを表示したくありません。努力してくれてありがとう! – Siege21x

1

ログインコードを次のように変更しても動作します。

<script type="text/javascript"> 
$(document).ready(function() { 
    alert("Something"); 

    t = clicked(); 
    $('#login').click(function() { 
     alert("Login Alert!"); 
    }); 
}); 
function clicked() { 
    alert("I was clicked!"); 
} 
</script> 

<input type="button" value="Login" id="login" onclick="clicked()"> 

キャッチされないにReferenceError:(のindex.php:22)クリックはHTMLInputElement.onclickで定義されていない

この問題も解決します。私は正しくはわからないが、私はブラウザがjquery内で関数を見つけることができないと思った。だから私は手続きのようなかもしれないと思うまだ

DOMがready.Butコントロールであるとき

jQueryのは、ページを作成中のonclickプロパティは、ブラウザによって読み込まれた関数を作成しますが、それは準備ができていなかったbecuse彼らは機能を見つけることができません。

1)ブラウザでページを読み取り、その機能を見つけます。

2)JQuery準備完了イベントが発生します。このような

+0

お返事ありがとうございました!しかし、それは私のコンピュータに問題があるようです:私は、ボタンをクリックするとコンソールにメッセージを送信しようとしましたが、ログに届きますが、メッセージボックスを表示したくありません。努力してくれてありがとう! – Siege21x

+0

お手数ですがお手伝いできます。 –

1

置き、あなたの機能を:

<script type="text/javascript"> 
$(document).ready(function() { 
alert("Something"); 
t = clicked(); 
$('#login').click(function() { 
    alert("Login Alert!"); 
}); 

}); 
function clicked() { 
    alert("I was clicked!"); 
} 
</script> 
+0

レスポンス兄弟ありがとう!しかし、それは私のコンピュータに問題があるようです:私は、ボタンをクリックするとコンソールにメッセージを送信しようとしましたが、ログに届きますが、メッセージボックスを表示したくありません。努力してくれてありがとう! – Siege21x

関連する問題