我的alert("No money")
工作正常,但我的alert("works!")
不能工作?這些錯誤對我來說沒有任何意義,因爲我覺得我寫的內容在語法上是正確的。爲什麼我的原型不能工作?
感謝您抽出寶貴時間來閱讀:d
這裏是我的gameTime.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>WOMP</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<link rel="stylesheet" href="gameTime.css">
</head>
<body>
<form class="col-md-4 col-md-offset-4" name="formHandler" id="handle">
<div id="allFields">
<div class="moveUsername">
<h1>(All numbers inputted will be assumed that it's in dollars)</h1>
<label for="usr">What's your annual salary?</label>
<input type="field" class="form-control" id="salary" placeholder="What's your annual salary?" required="required">
</div>
<div class="ageMovement">
<label for="usr">How much do you spend every month on bills?</label>
<input type="field" class="form-control" id="monthlyBills" name="ageChecker" placeholder="How much do you spend every month on bills?" required="required">
</div>
<div class="emailMovement">
<label for="usr">How much do you spend when going out?</label>
<input type="field" class="form-control" id="goingOut" name="emailChecker" placeholder="How much do you spend when going out?" required="required">
</div>
</div>
<button type="submit" class="btn btn-default" onclick="fin.isSalaryZeroOrLess()">Submit</button>
</form>
<script type="text/javascript" src="gameTime.js"></script>
</body>
</html>
這裏是我的gameTime.js
function Finance(salary, fixedExpense, variableExpense) {
this.salary = salary;
this.fixedExpense = fixedExpense;
this.variableExpense = variableExpense;
this.isSalaryZeroOrLess = function() {
var s = parseInt(document.getElementById("salary").value);
if(s <= 0) {
alert("No money");
}
}
}
Finance.prototype.greaterThan = function() {
var s = parseInt(document.getElementById("salary").value);
var userSalary = s/12;
if(userSalary < 30000) {
alert("works!");
}
}
var fin = new Finance(1000,1000,1000);
下面是錯誤:
Uncaught TypeError: Cannot set property 'greaterThan' of undefined
at gameTime.js:14
gameTime.html:28 Uncaught TypeError: Cannot read property 'isSalaryZeroOrLess' of undefined
at HTMLButtonElement.onclick (gameTime.html:28)
無法重現的第一個錯誤。有'''Finance.prototype.greaterThan = function(){'缺少。 – Xufox
@Xufox在發佈這個問題後,我發現了這個問題。我修復了它,但它仍然不會工作:( – chompy
@ Xufox當我發現錯誤並修復它時,我檢查了我的控制檯是否有其他錯誤,沒有任何顯示。控制檯中沒有錯誤,但是我的'greaterThan ()'prototype will not work。 – chompy