我希望nameVerification()
函数在用户点击alert()
时抛出submit
消息。例如,如果用户在45
字段中输入name
之类的内容,我希望调用alert
函数中的nameVerification()
。现在,当用户输入name
字段中的数字时,正在调用alert()
函数中的formSubmission()
。
旁注:
formSubmission
功能完美无缺。换句话说,如果用户输入一个数字<在age
字段中,函数alert()
被正常调用,没有任何问题。如果用户输入数字> 13,它的工作原理也没有问题。我以为我会让你们知道的。
signUp.html
<!DOCTYPE html>
<html>
<head>
<title>Signup Form</title>
<script type="text/javascript" src="signUp.js"></script>
</head>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<link rel="stylesheet" href="signUp.css">
<body>
<form class="col-md-4 col-md-offset-4" name="formHandler" id="handle">
<div class="moveUsername">
<label for="usr">Name:</label>
<input type="field" class="form-control" id="nameVerify" placeholder="Username" required="required">
</div>
<div class="ageMovement">
<label for="usr" >Age (Must be 13 years or older to play):</label>
<input type="field" class="form-control" id="ageVerify" name="ageChecker" placeholder="Age" required="required">
</div>
<button type="submit" class="btn btn-default" onclick="formSubmission()" onclick="nameVerification()">Submit</button>
</form>
</body>
</html>
signUp.js
function nameVerification() {
var name = document.getElementById("nameVerify").value;
if(typeof name !== 'string') {
alert("That's not a name!");
}
}
function formSubmission() {
var age = document.getElementById("ageVerify").value;
if(age < 13) {
alert("You're too young, you can't play the game");
}
}
答案 0 :(得分:3)
age
在此函数中也是string
:
function formSubmission() {
var age = document.getElementById("ageVerify").value;
if(age < 13) {
alert("You're too young, you can't play the game");
}
}
如果要进行数字比较,则需要先解析:
function formSubmission() {
var age = document.getElementById("ageVerify").value;
if (age) {
var ageInteger = parseInt(age, 10);
if (ageInteger < 13) {
alert("You're too young, you can't play the game");
}
}
}
答案 1 :(得分:3)
按钮上有两个onclick属性
SELECT 'A'||lpad(s::text,5,'0') as myval FROM generate_series(8,12) as t(s)
你只能有一个
答案 2 :(得分:1)
您的typeof
测试失败,因为从文本输入返回的值始终是string类型。您可以使用以下函数测试提供的文本值是否为数字:
function isNumeric(n) {
return !isNaN(parseFloat(n)) && isFinite(n);
}
然而,真正的答案是,您需要改进输入验证测试以确定您想要的内容,而不是测试您 don&#39的所有内容;想要。例如,如果某人输入了&#34; t @ ^!&#34;那么,如上所述测试数值是行不通的。在该字段中,这可能不是您在名称字段中想要的值。这是regular expressions的位置,built-in validations from HTML 5个字段可以提供帮助。
答案 3 :(得分:0)
这是因为尚未加载javascript。
移动:
[RoutePrefix("api/nestedSet")] //<<======
public class NestedSetController : ApiController
{
[Route("myaction01")] //<<======
[HttpGet]
public async Task<int> Myaction01_differentName()
{
//the call will be: http://mydomain/api/nestedSet/myaction01
//code here...
return 0;
}
[Route("myaction02")] //<<======
[HttpGet]
public async Task<int> Myaction02_differentName()
{
//the call will be: http://mydomain/api/nestedSet/myaction02
//code here...
return 0;
}
}
位于<script type="text/javascript" src="signUp.js"></script>
标记的正上方。
答案 4 :(得分:0)
你应该使用parseInt:
CREATE TABLE test (col NUMBER(0,0))
答案 5 :(得分:0)
您可以按如下方式更改nameVerification功能:
function nameVerification(){ var name = document.getElementById(&#34; nameVerify&#34;)。value;
if (name) {
var num = parseInt(name) || -1;
if (num >= 0 && num < 13) {
alert("That's not a name!");
}
}
}
并将html中的onclick值更改为:
的onclick =&#34; formSubmission(); nameVerification()&#34;