js无法获取密码框的值。为什么T_T 10
8个回答
展开全部
问题原因:
当执行获取dom节点的value值代码,类似这三行时:
var oldPaw = $('#oldPaw').val();
var newPaw = $('#newPaw').val();
var newPawConf = $('#newPawConf').val();
页面中的输入框里是空的,它们此时的值为undefined。页面渲染完成时,你的代码已经执行完了,当你再次往输入框里输入数据时,你获取input框value值的代码不会再次执行了。
2.解决方案:
$('.btn').click(function() {
var oldPaw = $('#oldPaw').val();
var newPaw = $('#newPaw').val();
var newPawConf = $('#newPawConf').val();
console.log(oldPaw, newPaw, newPawConf);
})
把获取value值的代码放到click事件中,当点击按钮是再执行获取value值的代码,这样就不会再出现这种问题了。
3.总结:
获取页面dom元素的时机问题,要在恰当的时机执行某些js代码,把js代码放到各种事件里面,当触发该事件时再执行你的js代码。
4.类似问题:
页面中有图片,碰到网络问题或者图片过大时,用js获取该图片时获取不到,原因就是浏览器解析js代码时图片并没有加载完成,所以取不到值。因此,你经常可以看到js文件中会出现如下代码:
window.onload = function(){ };//加载完页面所有元素后执行(包括图片、文件等)
// 或者
$(function(){ });//加载完页面所有dom节点后执行里面的代码
展开全部
首先你的写法没有问题吗?
其次就是在你的js里面你的引用没有出错吗?
还有就是在你的jsp里面有没有引用这个js文件
$("#id").val();这样去取到你的密码!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
那是因为你没写对吧?
你这样试试看,通过元素的ID获取值:
<input type='password' id='pwd' value='this is value'/>
<script>
var value = document.getElementById('pwd').value;
alert(value)
</script>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
js绝对是可以获取到文本框的值的!
var password= $("#密码框id").val();
var password=document.getElementById("密码框id").value;
除非你js出错,js根本执行不到那里,可以谷歌debug一下;
var password= $("#密码框id").val();
var password=document.getElementById("密码框id").value;
除非你js出错,js根本执行不到那里,可以谷歌debug一下;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看看你js有没有报错,或者是你是不是没有导入jquery的压缩文件(jquery.min.js)才获取不到值
更多追问追答
追问
我刚刚在页面忘记导js了,然后加进去了,结果还是不行T-T,js的包加进来的,alert("hehe")也不出现,但是我用documen.getElementById这个获取,又能提示出我写的“hehe”,但是仅此而已,肿么破,T-T,
我刚把onclick改到了的onsubmit里,还是不能用,啊!!!!
追答
js的路径是不是错了,
documen.getElementById 错了少了t document.getElementById
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询