0

ボタン付きのUserControlがあります。jQueryを使用してこのボタンのクリックイベントをキャッチしようとしています。ascxの私のコード:

<link type="text/css" href="css/jquery-ui-1.8.22.custom.css" rel="stylesheet" />
<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="js/jquery-ui-1.8.22.custom.min.js"></script>
<script type="text/javascript" src="js/myjQueryCode.js"></script>

<button id="test-button">Test</button>

myjQueryCode.jsのコード。

私はこれを試しました:

$('#test-button').bind('click', function() {
    alert("123");
});

この:

$("[id$=test-button]")
    .button()
    .click(function() {
        alert("123");
});

この:

$('#test-button')
    .button()
    .click(function() {
        alert("123");
});

何も仕事ではありません。

4

5 に答える 5

2

コードを の横に配置しようとしました$(document).ready()か? これを試して:

$(document).ready(function(){

    $('#test-button').bind('click', function() {
        alert("123");
    });

});
于 2012-08-08T13:23:47.423 に答える
1

次のようにする必要があります。

$('#test-button').click(function () {
    console.log('Click activated.');
});

コードが実際に実行できることを確認します。たとえば、次のように、実行された関数でステートメントをラップします。

(function () {
    // Write code here
}());

または、次のように、ドキュメントの準備ができたら実行します。

$(document).ready(function () {
    // Write code here
});
于 2012-08-08T13:24:03.030 に答える
0

.button()を参照せずにjQueryを使用する最初のアプローチは、jsfiddleで機能します:http://jsfiddle.net/Cd5Qj/

したがって、スクリプトタグにjQueryライブラリへのパスが間違っているか、次のようなjQueryブロック内にコードが含まれていない可能性があります。

$(function(){
  ... //code here
});

...または、ここに表示していないコードが他にもあるため、調査できない競合があります。

于 2012-08-08T13:29:34.617 に答える
0

jQueryコードは要素が存在する前に実行されているため(<script>タグはボタンのHTMLの前にあるため)、DOM対応のイベントハンドラーでラップする必要があります。そのようです:

$(document).ready(function() {
    $('#test-button').bind('click', function() {
        alert("123");
    });
});

詳細については、.ready()関数のAPIドキュメントとjQuery入門チュートリアルを参照してください。

于 2012-08-08T13:24:57.530 に答える
0

HTMLコードの後に​​スクリプトコードを配置してみてください - おそらくこれが役立つでしょう...

于 2012-08-08T13:23:58.640 に答える