[英]firebug and chrome console both have disappearing console.log messages
我正在從頭開始編寫我的第一個網站 - 我有一個表單和一個在提交表單時起作用的函數:
應用程序.js
$(document).ready(function() {
$("#signupform").submit(function(e) {
var name = document.getElementById("pname").value;
var email = document.getElementById("email").value;
var userArray = [];
var user = {
name: name,
email: email
};
console.log(user.email, user.name);
e.preventDefault;
});
});
該消息已正確記錄到控制台……但這只是一個曇花一現——它立即消失了。 另外......我在編寫上述代碼時遇到的任何錯誤也只在控制台中顯示為短暫的光點。 剛好夠讀。
這是我的 index.html 文件......以防它是相關的:
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>it IT</title>
<link rel="stylesheet" type="text/css" href="application.css" />
<script src="jquery.js"></script>
<script src="application.js"></script>
<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
</head>
<body>
<h1>it IT</h1>
<div id="signup">
<form id="signupform">
Name: <input type="text" name="pname" id="pname"><br>
Email: <input type="text" name="email" id="email"><br>
<input type="submit" value="sign up">
</form>
</div>
<div id="signin"></div>
<div id="content"></div>
</body>
</html>
preventDefault 是一種方法,您需要:
e.preventDefault();
在您的問題代碼中,表單已提交,因此控制台已刷新。
其實e.preventDefault
是不正確的,你需要這樣做:
$(document).ready(function () {
$("#signupform").submit(function (e) {
e.preventDefault(); // Missing () for preventDefault method
var userArray = [];
var user = {
name: $('#pname').val(), // also, you can get the values here only
email: $('#email').val() // no need to use extra variables for it
};
console.log(user.email, user.name);
});
});
在您的瀏覽器控制台中,轉到設置(在右上角)並選中保留日志選項。 這應該可以防止頁面重新加載。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.