jq获取第一个显示的元素

问题描述

用jq获取第一个显示的元素 我使用了遍历 进行判断也行不通 求教

问题出现的环境背景及自己尝试过哪些方法

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

$(".cur-input").each(function (i) {

                if($(this).css("display")=="inline-block"){
                    var offsetTop = $('.cur-input').eq(i).offset().top
                    $(document).scrollTop(offsetTop-90)
                    return false;
                }
            })
            
            
            
            好像是这个影响的
            
            

function inp4(callback){

    if (creditcode($('input[name="enterpriseIdCard"]').val(), '#creditcode_tip')) {
        $.ajax({
            url: "${basePath}/realNameUtils/checkUniqueIdCardNum?idCardNum=" + $('input[name="enterpriseIdCard"]').val() + "&type=" + "creditCode",
            type: "post",
            async: false,
            dataType: "json",
            success: function (data) {
                if (!data) {
                    $("#creditcode_tip").html("证件号码已被占用!");
                    $("#creditcode_tip").show();
                    typeof callback === 'function' && callback(false)
                }else{
                    $("#creditcode_tip").hide()
                    typeof callback === 'function' && callback(true)
                }
            }
        });

    } else {
        $("#creditcode_tip").show()
        typeof callback === 'function' && callback(false)
    }
}

只有这一个调用接口判断的表单  因为用callback的问题所以不好好使  没有这个就行

你期待的结果是什么?实际看到的错误信息又是什么?

图片描述

我想在点击提交的时候实现 判断上面哪个提示显示 两个按钮就会向上滚动到相应的位置
我想获取第一个显示着的 display:inline-block的元素

阅读 3.6k
3 个回答

结果看上去没错呀

clipboard.png

可以使用:visible选择器选取每个当前是可见的元素:$(".cur-input:visible")

然后在使用eq(0)选择第一个匹配的元素

表单验证用的是表单插件还是自己写的?
如果是表单插件的话,检查下代码运行顺序,保证这段代码在验证结束后再运行;如果是自己写的就贴上完整代码。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题