【问题标题】:How to get onblur input id or tabIndex from a cfinput via JavaScript or jQuery?如何通过 JavaScript 或 jQuery 从 cfinput 获取 onblur 输入 id 或 tabIndex?
【发布时间】:2012-10-10 10:02:00
【问题描述】:

我有一个 ColdFusion cfform 包含:

<cfinput type="text" name="part1" id="part1" tabIndex="1" onblur="enabled()" >
<cfinput type="text" name="part2" id="part2" tabIndex="2" onblur="enabled()" disabled="disabled" >
<cfinput type="text" name="part3" id="part3" tabIndex="3" onblur="enabled()" disabled="disabled" >

我想要的是让输入框禁用,除非它的前一个不为空,所以我这样做了:

function enabled()
{
    var curIndex = + ( $( " * : focus " ).attr( " tabIndex " ) );
    var curVal = $( ' * : input [ tabIndex=' + curIndex + ' ] ' ).val();
    var nextIndex = curIndex + 1;
    var nextId = $( ' input [ tabIndex = " ' + nextIndex + ' " ] ' ).attr( " id " );
    if ( curVal == "" )
    {
        nextId.setAttribute( ' disabled ', ' disabled ' );
    }
    else
    {
        nextId.removeAttribute( ' disabled ' );
        nextId.focus();
    } 
} 

但我坚持获取 curIndex,当我提醒它时它显示为“未定义”。
任何建议表示赞赏。

【问题讨论】:

    标签: javascript jquery coldfusion coldfusion-8 cfform


    【解决方案1】:

    怎么样:

    ​$('input[type=text][name^=part]').on('blur',function(){​​​​​​​​​​​
        var el = $(this);
        var elNext = el.next('input[type=text][name^=part]');
        if(el.val()!=''){
            elNext.removeAttr('disabled');
        }else{
            elNext.attr('disabled',true);
        }
    });
    

    所以你不需要输入处理程序:

    <cfinput type="text" name="part1" id="part1" tabIndex="1" > 
    <cfinput type="text" name="part2" id="part2" tabIndex="2" disabled="disabled" > 
    <cfinput type="text" name="part3" id="part3" tabIndex="3" disabled="disabled" >
    

    Demo

    【讨论】:

      猜你喜欢
      • 2011-07-15
      • 1970-01-01
      • 1970-01-01
      • 2019-02-06
      • 2014-03-27
      • 1970-01-01
      • 2020-01-27
      相关资源
      最近更新 更多