所以我一直试图弄清楚这一点了几个小时的Javascript的onclick对象不是一个函数
下面是我得到的错误:
我不明白是什么导致错误,任何见解将不胜感激!
这里是我的代码,忽略Smarty的语法:
<html>
<head>
<title>{$title}</title>
{include file='header/header.tpl'}
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container" style="padding-top: 5%;">
<form action="" method="POST">
<center>
<img src="" style="height: 70px;">
</center>
<div class="form-signin">
<input type="email" class="form-control" style="font-size: 10pt;" id="email" placeholder="Email Address" required autofocus>
<input type="password" class="form-control" style="font-size: 10pt;" id="password" placeholder="Password" required>
<input type="submit" class="btn btn-warning btn-sm" value="Login" data-loading-text"Login" id="login" onClick="login();" style="outline: none;">
</div>
</form>
</div>
{literal}
<script type="text/javascript">
$(function() {
function login() {
alert('asdf');
}
});
</script>
{/literal}
</body>
</html>
'login'不在范围内。在JavaScript_中不添加标记中的事件_in。 – elclanrs 2014-08-31 20:30:03
它不在范围内?它看起来在范围 – user3681580 2014-08-31 20:33:45
除了范围问题,'login'函数和'id =“login”'的输入都可以用'login'引用,所以你最终在这里遇到名称冲突。 – haim770 2014-08-31 20:34:10