input点击事件失效


input点击事件失效

原因:
异步导致绑定失败,需使用全局绑定事件

<div>
  <ul class="m-setting01" id="inputForm">
    <li class="setting-con02" v-for="item in inputFormList">
        <div class="setting-box01">
            <span class="setting-lab02">{{item.fieNameC}}</span>
            <input type="text" v-if="item.fieType == 'T'" v-model="formData[item.fieName]" class="setting-ipt04" :placeholder="item.parabsName" :id="item.fieName">
            <input type="text" v-else readonly="readonly" v-model="formData[item.fieName]" class="setting-ipt04" :placeholder="item.parabsName" :id="item.fieName">
        </div>
    </li>
   </ul>
</div>
<script>
getInputFormList: function () {
    var that = this
    var params = {
        'doctorSn': this.doctorSn,
        'hospitalId': this.doctorInfo.hospitalId,
        'hosDeptId': this.doctorInfo.hosDeptId
    }
    getInputFormControls(params).then(function (res) {
        if (res.result) {
            that.inputFormList = res.result
            console.log(res.result)
            for (var item of res.result) {
                that.formData[item.fieName] = ""
                if (item.fieType == 'C') {
                    // 先绑定全局,再绑定局部
                    $("#inputForm").on("click", '#' + item.fieName, function() {
                        console.log('333333333')
                    })
                }
            }
        }
    })
}
</script>

// 失效
$('#' + item.fieName).on("click", function() {
console.log('333333333')
})
// 解决办法
$("#inputForm").on("click", '#' + item.fieName, function() {
console.log('333333333')
})

参考文档:

https://blog.csdn.net/qq_34117170/article/details/76130868


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM