目标是将一个事件监听器添加到一个表单,该表单检查initForm函数的“submit”事件,但是,无论我在哪里添加事件监听器,某段代码都会以未定义的形式出现。
let ShapeLink = (function(){
//code here!
return {
initForm: function(frm){
//code here!
}
}
})()
是否也会受到HTML中脚本标记中的这段代码的影响?
ShapeLink.initForm(document.querySelector("form"));
我在哪里放置事件监听器?什么格式?
ps这里是完整的HTML
<body>
<form>
<label for="name">Name:</label>
<input type="text" id="name">
<label for="shapeSelect">Shape:</label>
<select name="" id="shapeSelect">
<option value="">pick a shape</option>
<option value="square">Square</option>
<option value="circle">Circle</option>
</select>
<input type="submit" value="Submit">
</form>
<div id="outputText"></div>
<svg width=100 height=100></svg>
<script>
ShapeLink.initForm(document.querySelector("form"));
</script>
目标是将我的所有代码放入js文件(页面顶部的javascript)。我不确定我需要做什么来定义ShapeLink。