Javascript HTML
标记在Javascript中没有更改 所以我正在做一个基于用户输入解决三角形的项目。我使用Chrome开发编辑器是为了让它成为一个Chrome应用程序。不过,我在让代码正常工作时遇到了麻烦。现在,我正在测试它,看看当点击一个按钮时它是否会改变一个段落。这是给我带来麻烦的一块:Javascript HTML,javascript,html,google-chrome,Javascript,Html,Google Chrome,标记在Javascript中没有更改 所以我正在做一个基于用户输入解决三角形的项目。我使用Chrome开发编辑器是为了让它成为一个Chrome应用程序。不过,我在让代码正常工作时遇到了麻烦。现在,我正在测试它,看看当点击一个按钮时它是否会改变一个段落。这是给我带来麻烦的一块: function degToRad(num) { if (num === undefined) { return; } return Math.PI * num / 180; } function init()
function degToRad(num) {
if (num === undefined) { return; }
return Math.PI * num / 180;
}
function init() {
var text = document.querySelector("#form1");
sideA = text.elements[0].value;
sideB = text.elements[1].value;
sideC = text.elements[2].value;
angleA = degToRad(text.elements[3].value);
angleB = degToRad(text.elements[4].value);
angleC = degToRad(text.elements[5].value);
whatWeGot();
}
//determine which algorithm to go to and run it
function whatWeGot() {
if (angleA === undefined && angleB === undefined && angleC === undefined) {
algSSS();
} else if (sideC === undefined && angleB === undefined && angleC === undefined) {
algSSA();
} else if (sideB === undefined && sideC === undefined) {
if (angleC === undefined) { angleC = Math.PI - (angleA + angleB); }
else if (angleB === undefined) { angleB = Math.PI - (angleA + angleB); }
else { angleA = Math.PI - (angleB + angleC); }
algASA();
}
}
function algSSS() {
document.getElementById('test').innerHTML = 'sss worked';
}
这是index.html
<!DOCTYPE html>
<html>
<head>
<title>TrigCalc</title>
<script type = "text/javascript" src="main.js"></script>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<div id="greeting"></div>
<p id="prompt1">Fill up sides A, B, then C, angles in degrees <strong>(Warning: does not test for amibiguous case)</strong></p>
<form id="form1" action="form_action.asp">
Side A: <input type="Number" name="sideA"><br>
Side B: <input type="Number" name="sideC"><br>
Side C: <input type="Number" name="sideC"><br>
Angle A: <input type="Number" name="angleA"><br>
Angle B: <input type="Number" name="angleB"><br>
Angle C: <input type="Number" name="angleC"><br>
<input type="button" onclick="init()" value="Submit"/>
</form>
<p id='test'></p>
</body>
</html>
其他内容发布在manifest.json文件中,该文件创建Chrome应用程序窗口并为其提供其他属性。对于这类事情使用JQuery会更好吗?谢谢。你的if's和else's逻辑不是很有条理 你想做什么还不太清楚。 在中的html注入确实有效,正如您在这里看到的- 角度a==未定义等。。你应该用类似angleA的东西来代替它=0或!角度A和角度B和角度C>0-> 此外,Chrome作为一个很好的调试器实用程序F12,您可以使用它查看变量的值
至于jQuery,它是一个非常好的工具,非常值得推荐。使用jQuery做的事情会简单一些,但对于更复杂的事情,jQuery可以节省很多。必须了解工具。问题不在ALGSS中,问题是若输入字段为空,则angleX=0 所以基本上
if (angleA === undefined ...)
你想要
if (angleA == 0 ...)
if (angleA == 0 ...)