1

SnackJS API を使用しています。そして、「qty」というクラス名で各入力要素 (Textbox) にイベントを添付する必要があります。これには id 属性を使用できません。これは動的に生成されて一意であり、他の何かによって使用されているためです。

<script type="text/javascript">
    snack.ready(function () {
        // Do your work.
        // Attach an event to QTY Textbox elements.
        var listener = snack.listener({
            node: document.getElementsByClassName("qty"),
            event: 'blur'
        }, function () {
            alert("hello, element.");
        });

        listener.detach();
        listener.attach();
    });
</script>

使い方はgetElementByClassName

4

2 に答える 2

1

getElementByClassName配列のような構造を返します。それらをループして、イベントをそのようにバインドする必要があります。

于 2012-10-16T12:43:29.640 に答える
1

返されるNodeListをループするか(ループを回るたびにgetElementsByClassName呼び出す)、 APIドキュメントに従ってイベントハンドラーを委任することができます。snack.listener

var params = {
  node: document.body,
  event: 'click',
  delegate: function (node){
    return node.getElementsByClassName('qty')
  }
}
snack.listener(params, someFunction);
于 2012-10-16T12:45:02.670 に答える