遇到这么个需求,如下图,当所需要的东西都不为空时,下一步按钮才可以点击,没有做过不知道怎么下手,求各路大神指点迷津,在此谢过。
当所要填的内容不为空时,按钮变成可点击状态如下图:
遇到这么个需求,如下图,当所需要的东西都不为空时,下一步按钮才可以点击,没有做过不知道怎么下手,求各路大神指点迷津,在此谢过。
当所要填的内容不为空时,按钮变成可点击状态如下图:
给你个参考吧,写个函数来确认btton是否改变,每次input变化时调用,用双向绑定的框架就更简单了,提交的值全部放在一个数组里面,监听这个数组的变化,判断是否全部有值,进行button的改变
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
.active{
background: orange;
}
</style>
</head>
<body>
<div class="box">
<input type="text">
<input type="text">
<input type="text">
<input type="file">
<button class="btn" disabled="disabled" onclick="aaa()">下一步</button>
</div>
<script>
var oBox = document.getElementsByClassName('box')[0];
var oIp = oBox.getElementsByTagName('input');
var btn = oBox.getElementsByTagName('button')[0];
[].slice.call(oIp).forEach(function(element) {
if(element.type!='file'){
element.oninput = function(){
btnclick();
}
}else{
element.onchange = function(){
btnclick();
}
});
function btnclick(){
var flag = true;
for(var i=0;i<oIp.length;i++){
if(oIp[i].type!='file'){
if(!oIp[i].value){
flag = false;
}
}else{
if(!oIp[i].files[0]){
flag = false;
}
}
}
if(flag){
btn.disabled = false;
btn.classList.add('active');
}else{
btn.disabled = true;
btn.classList.remove('active');
}
}
</script>
</body>
</html>
10 回答11.2k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答1.5k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
输入框有输入事件 比如
oninput
事件 可以在输入事件的时候监听输入框是否有值 也就是有没有value
然后改变button
状态