我在HTML文件中有以下按钮:
<button id="signupbutton" name="signup.submit" type="submit" class="btn">Sign up</button>
我正在使用金字塔,我包含了闭包基础和我的脚本:
<script src="${request.static_url('app:javascripts/closure-library/closure/goog/base.js')}"></script>
<script>
goog.require('goog.events');
goog.require('goog.events.EventType');
goog.require('goog.dom')
goog.require('goog.dom.forms');
</script>
<script src="${request.static_url('app:javascripts/checks.js')}"></script>
在我的javascript文件checks.js中我写道:
var buton = goog.dom.getElement('signupbutton');
goog.events.listen(
buton,
goog.events.EventType.CLICK,
function(e) {
alert("Here");
});
我在控制台中获得的是TypeError: src is null events.js:954 (var listenerMap = src[goog.events.LISTENER_MAP_PROP_];)
,没有任何反应,只有页面重新加载!
如果我使用谷歌关闭创建按钮它的工作原理!所以我无法弄清问题是什么!
答案 0 :(得分:0)
这似乎是因为你的button is not in the DOM
执行了javascript。
只有在DOM中加载了按钮后才能执行脚本。
TypeError:src为null events.js:954