为什么这段代码不能在$(document).ready()块中运行?

时间:2015-02-18 10:57:46

标签: javascript jquery

我在页面启动时有一个简单的目标,考虑到我有一个表单,其id是'formCadastro':

  1. 将重点放在id为'btnNovo'
  2. 的按钮上
  3. 禁用表单
  4. 内处于readOnly状态的所有组件的选项卡索引
  5. 禁用表单
  6. 中所有表的选项卡索引

    所以我写了这段代码:

    $( document ).ready(function() {
            alert("ok");
            $("#btnNovo").focus();
            $("#formCadastro").find('input, textarea, select').filter(":readonly").each(function {
                $(this).attr('tabindex', -1);
            });
            $("#formCadastro").find('table').each(function { 
                $(this).attr('tabindex', -1);
            });
    });
    

    但它甚至没有显示警报,实际上我已经测试了一些事情并发现问题出现在第二步和第三步,当我尝试在这两个语句中禁用某些元素的tab索引时:

    $("#formCadastro").find('input, textarea, select').filter(":readonly").each(function {
        $(this).attr('tabindex', -1);
    });
    $("#formCadastro").find('table').each(function { 
        $(this).attr('tabindex', -1);
    });
    

    我想知道的是如何使这项工作按预期进行

1 个答案:

答案 0 :(得分:1)

我认为这是一个语法问题,您需要更改:

.each(function {  

代表

.each(function() {