我做了一个正则表达式来验证潜在的比特币地址,现在当我点击报价按钮时,我希望根据正则表达式检查表单中输入的值,但它不起作用。
https://jsfiddle.net/arkqdc8a/5/
var walletCheck = $('#wallet').val();
var reg = new RegExp("^[13][a-km-zA-HJ-NP-Z1-9]{25,34}$");
$('#button1').on('click', function() {
if (reg.test(walletCheck)) == false {
alert("Inalid Address");
}
else {
alert("Valid Address");
}
}
<input type="form"
id="wallet"
maxlength="34"
pattern="^[13][a-km-zA-HJ-NP-Z1-9]{25,34}$"
placeholder="Your Bitcoin wallet's address"></input><br><br>
<button id="button1">Click for a quote!</button>
试试这个。您有一些牙套没有正确闭合,您的相等性检查也没有正确完成。你的小提琴也没有导入jQuery。
var reg = new RegExp("^[13][a-km-zA-HJ-NP-Z1-9]{25,34}$");
$('#button1').on('click', function() {
var walletCheck = $('#wallet').val();
if (reg.test(walletCheck)) {
alert("Valid address");
} else {
alert("Invalid address");
}
});
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<input type="text" id="wallet" maxlength="34" pattern="^[13][a-km-zA-HJ-NP-Z1-9]{25,34}$" placeholder="Your Bitcoin wallet's address" />
<br>
<br>
<button id="button1">Click for a quote!</button>
所以你在javascript代码中缺少一些语法上的东西。
- 您的 if 条件需要放在括号中。 使用 '=
- =' 或 '===' 比较 if 语句中的条件
- 在最后一行中,更正")}"为")}"。
var walletCheck = $('#wallet').val();
var reg = new RegExp("^[13][a-km-zA-HJ-NP-Z1-9]{25,34}$");
$('#button1').click(function() {
if ((reg.test(walletCheck)) === false) {
alert("Inalid Address");
} else {
alert("Valid Address");
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<input type="form" id="wallet"
maxlength="34"
pattern="^[13][a-km-zA-HJ-NP-Z1-9]{25,34}$"
placeholder="Your Bitcoin wallet's address"></input><br><br>
<button id="button1">Click for a quote!</button>
检查此 plunk 以获取代码的工作版本。