-1

我有这个脚本:

<aui:script use="aui-node,aui-io-request,aui-base,event">
AUI().use('event', 'aui-node', 'aui-base', function (A) {

    var inputObject = A.one('#_Tend_ApplicationMain_WAR_ETenderportlet_vrednost').on('keyup', function (event) {
        alert("Hi you have performed On change Event and Thank You");
    });
})
</aui:script>

为什么警报从来没有出现过?

4

1 回答 1

1

您的代码有多个问题:

  1. AUI().use(//...如果您使用<aui:script>use属性,则无需指定。
  2. 您只需要将aui-node模块指定为use属性的参数。
  3. 您很可能不想设置inputObject等于方法的返回值on。相反,您似乎想要这样做var inputObject = A.one('#id');
  4. change事件与事件不同keyup,因此声称它是事件的您.on('change', function(event) { //...或您的消息都是不正确的。alertonchange
  5. 您可能会遇到A.one('#_Tend_ApplicationMain_WAR_ETenderportlet_vrednost')无法找到元素的问题(检查浏览器日志以确定是否属实)。如果是,则您的元素可能具有部分生成的前缀,可以使用<portlet:namespace />.

如果你把所有这些放在一起:

<aui:script use="aui-node">
    // possibly change the A.one() argument to '#<portlet:namespace />_Tend_ApplicationMain_WAR_ETenderportlet_vrednost'.
    var inputObject = A.one('#_Tend_ApplicationMain_WAR_ETenderportlet_vrednost');
    inputObject.on('keyup', function (event) {
        alert("Hi you have performed On keyup Event and Thank You");
    });
</aui:script>

这是一个可运行的示例:

YUI().use('aui-node', function(A) {
    var inputObject = A.one('#_Tend_ApplicationMain_WAR_ETenderportlet_vrednost');
    inputObject.on('keyup', function (event) {
        alert("Hi you have performed On keyup Event and Thank You");
    });
});
<script src="https://cdn.rawgit.com/stiemannkj1/701826667a70997013605edcd37e92a6/raw/469fe1ae297e72a5a80eb9015003b7b04eac735e/alloy-ui-3.0.1_aui_aui-min.js"></script>
<link href="https://cdn.rawgit.com/stiemannkj1/90be22de7f48c729b443af14796d91d3/raw/a9f35ceedfac7fc0559b121bed105eaf80f10bf2/aui-css_css_bootstrap.min.css" rel="stylesheet"></link>
<input id="_Tend_ApplicationMain_WAR_ETenderportlet_vrednost" />

于 2014-12-09T05:06:15.707 回答