WebAPI:遇到的各种问题

115 阅读2分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第5天,点击查看活动详情

复选框给不了选中状态

image.png

解决方案: 1、eachChecked[i] = allChecked(判断单独写) 2、eachChecked[i] = true

单个复选框勾选无法影响到整体的

image.png

原因:这里不能直接用判断去操作,因为还有后续的效果;每次都需要遍历全部去判断是否全选再加事件(return退出函数)

image.png

购物车数量改变数值无法生效

image.png 原因:由于是要改变数值,要用到value属性,其次目前自增前加后加没区别,因为不涉及计算

一个数组绑定事件必须遍历

image.png 通过监测点击得到对应的下标,从而进行事件的操作

当动态添加类时利用this

image.png (1)首先移除之前默认添加的类

(2)添加点击的事件

获取价格时,带单位不容易操作

                <td class="price">35¥</td>
                

解决方法: parseInt(s_total[i].innerHTML) ,可以过滤掉单位

一个有趣的发现,js可以用id直接调用

image.png image.png 就像这样,name也可以

image.png

但是不规范,所以尽量不要用

使用remove()函数的错误:

image.png

使用语句:

  del[i].addEventListener('click', function() {
                tb.children[i].remove()
                alert(i)
                checks[i].checked = false
                result()

            })

导致无法删除最后一个,并报错显示未定义

image.png

原因:删除后会改变i的值导致无法查找到实际的删除位置,因此不要用这个

解决方案:替换成 tb.removeChild(this.parentNode.parentNode)

渲染数据重复

image.png

image.png

这里使用了追加元素,导致重复,解决方案: 渲染前加:

image.png

批量删除数据,使用事件委托如何确定删除的元素下标

image.png

e.target只能获取到大目标 因此,可以给删除标签添加id=${i},用id获取下标

image.png

image.png

无内容也可以提交

image.png

Html5中新增的required属性可以应用在大多数输入元素上,在提交时。如果元素中内容为空白,则不允许提交,同事在浏览器中显示信息提示文字。

  // 这里如果用户没输入,就不能给他判断(change)
        pwd.addEventListener('change', verifypwd)
// contains可以验证是否有这个类
                if (!agree.classList.contains('icon-queren2')) {
                    alert('请勾选同意协议')
                    //ev.preventDefault()阻止自动提交
                    ev.preventDefault();
                }