onsubmit 处理程序未从所需的 js 文件中获取
onsubmit handler not getting picked up from a required js file
我不明白为什么我的 onsubmit 处理程序在提交时没有被触发。它在 js 文件中定义,并且是 html 文件所必需的。像这样:
GMaps.js
window.onload = function(){
(function initMap() {
var myLatLng = {lat: -25.363, lng: 131.044};
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 4,
center: myLatLng
});
var marker = new google.maps.Marker({
position: myLatLng,
map: map,
title: 'Hello World!'
});
})();
function gsubmit(event){
event.preventDefault();
console.log("hi");
}
};
和GMaps.ejs
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no">
<meta charset="utf-8">
<title>Google Maps Example</title>
<script src="/javascripts/GMaps.js"> </script>
<script src="https://maps.googleapis.com/maps/api/js?key=+MYKEY+&signed_in=true"></script>
<link rel="stylesheet" type="text/css" href="/stylesheets/GMaps.css">
</head>
<body>
<div id="map"></div>
</br>
<form onsubmit="gsubmit()">
Search: <input id="gplace" type="text" placeholder ="input a place to locate">
<input type="submit"></input>
</form>
</body>
</html>
这只是一个使用 gmap 的基本示例,我无法让表单识别我的提交处理程序
这是范围问题。
由于 gsubmit
在您的 window.onload
匿名函数中,当您提交表单时,没有找到名为 gsubmit 的函数。
试试这个:
window.onload = function(){
(function initMap() {
var myLatLng = {lat: -25.363, lng: 131.044};
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 4,
center: myLatLng
});
var marker = new google.maps.Marker({
position: myLatLng,
map: map,
title: 'Hello World!'
});
})();
}
function gsubmit(event){
event.preventDefault();
console.log("hi");
}
我不明白为什么我的 onsubmit 处理程序在提交时没有被触发。它在 js 文件中定义,并且是 html 文件所必需的。像这样:
GMaps.js
window.onload = function(){
(function initMap() {
var myLatLng = {lat: -25.363, lng: 131.044};
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 4,
center: myLatLng
});
var marker = new google.maps.Marker({
position: myLatLng,
map: map,
title: 'Hello World!'
});
})();
function gsubmit(event){
event.preventDefault();
console.log("hi");
}
};
和GMaps.ejs
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no">
<meta charset="utf-8">
<title>Google Maps Example</title>
<script src="/javascripts/GMaps.js"> </script>
<script src="https://maps.googleapis.com/maps/api/js?key=+MYKEY+&signed_in=true"></script>
<link rel="stylesheet" type="text/css" href="/stylesheets/GMaps.css">
</head>
<body>
<div id="map"></div>
</br>
<form onsubmit="gsubmit()">
Search: <input id="gplace" type="text" placeholder ="input a place to locate">
<input type="submit"></input>
</form>
</body>
</html>
这只是一个使用 gmap 的基本示例,我无法让表单识别我的提交处理程序
这是范围问题。
由于 gsubmit
在您的 window.onload
匿名函数中,当您提交表单时,没有找到名为 gsubmit 的函数。
试试这个:
window.onload = function(){
(function initMap() {
var myLatLng = {lat: -25.363, lng: 131.044};
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 4,
center: myLatLng
});
var marker = new google.maps.Marker({
position: myLatLng,
map: map,
title: 'Hello World!'
});
})();
}
function gsubmit(event){
event.preventDefault();
console.log("hi");
}