我是JS和HTML的新手,所以我道歉。 我尝试使用pattern =''属性验证输入到表单字段时遇到了麻烦。虽然它捕获了无效输入并提供了相应的错误消息,但后续修改输入不会更改错误消息。例如,
如果用户在字段中输入“testing2”, pattern="[a-zA-Z]"
将生成相应的消息。但是,如果用户编辑“测试”条目,我仍然会收到验证错误。
在尝试解决这个问题时,我尝试将字段输入记录到控制台。 所以,在HTML中:
<input class="dest_one_key" name="dest_one_key" type="text" id="dest_one_key" required="" placeholder="Work">
然后:
<script>
var v = document.getElementById('dest_one_key').value;
document.getElementById('dest_one_key').addEventListener('change', function() {
console.log(
价值:$ {v} );
});
</script>
......哪些是
“价值:”
在控制台中。 因此表单似乎没有捕获用户输入。
关于以下方面我做错了什么: 1)无效输入后无法正确注册用户有效输入 2)将字段的值记录到控制台?
答案 0 :(得分:1)
由于您的脚本只运行一次,因此v
变量将为空。您需要在活动中使用event.target.value
随时更改。像这样:
var v;
document.getElementById('dest_one_key').addEventListener('change', function(event) {
v = event.target.value;
console.log('Value: ' + v);
});
<input class="dest_one_key" name="dest_one_key" type="text" id="dest_one_key" required="" placeholder="Work">