gpt4 book ai didi

java.lang.Throwable : ReferenceError: event is not defined

转载 作者:行者123 更新时间:2023-12-01 10:44:10 25 4
gpt4 key购买 nike

如何通过javascript的event.target.value获取被点击的元素文本?

我找到了this knockoutjs example并希望将其移植到 Dukescript。

这是我的尝试:

HTML

<div class='liveExample'>   
<h2 class="outmodel" data-bind="value: 'A', click: myFunction">Aaaaa</h2>
<h2 class="outmodel" data-bind="value: 'B', click: myFunction">Bbbbb</h2>
<h2 class="outmodel" data-bind="value: 'C', click: myFunction">Ccccc</h2>
<hr />
<h1 data-bind="text: say"></h1>
</div>

Java:

package dew.demo.ko4j;

import net.java.html.json.*;
import net.java.html.js.*;

@Model(className="Hello", properties={
@Property(name="say", type=String.class)
})
final class HelloViaKO {

@Function public static void myFunction(Hello model){
model.setSay(getTextValue());
}

@JavaScriptBody(args={}, body = "return event.target.value;")
private static native String getTextValue();

static {
Hello model = new Hello("Hello World!");
model.applyBindings();
}
}

你可以在这个Fiddle上看到它,如果您查看控制台出现消息

java.lang.Throwable:ReferenceError:事件未定义

既然 java.awt.Event 也不存在,我们如何像 this.myFunction = function (data, event) 那样引用事件?

最佳答案

你应该使用

@Function public static void myFunction(Hello model, String data) {
model.setSay(data);
}

如经典DEW sample确实如此。

关于java.lang.Throwable : ReferenceError: event is not defined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34285076/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com