Jquery - 对象没有方法' prop'

时间:2014-12-06 06:41:43

标签: php jquery html

我的Jquery版本是1.3.2

我使用以下代码选择所有复选框 -

  $('#alldw').change(function(){
      if($(this).prop('checked')){
          $('tbody tr td input[id="dwchk"]').each(function(){
              $(this).prop('checked', true);
          });
      }else{
          $('tbody tr td input[id="dwchk"]').each(function(){
              $(this).prop('checked', false);
          });
      }
  });

但我收到的错误

Uncaught TypeError: Object [object Object] has no method 'prop' action:181
(anonymous function) action:181
jQuery.event.handle jquery.js:2568
elemData.handle.eventHandle

任何解决方案?

注意 - 我不想升级jquery,因为它有许多依赖关系

4 个答案:

答案 0 :(得分:2)

道具是1.6+。 1.3是古老的。如果您不想升级或更改为

,请使用attr
this.checked=true;

您的代码效率很低。 ID也必须是唯一的

$('#alldw').click(function(){
  var chk = this.checked;
  $('tbody tr td input[name="dwchk"]').each(function(){
    this.checked=chk;
  });
});

您可能想查看此问题的答案

Upgrade jQuery 1.4.2 to 1.9.1

答案 1 :(得分:1)

.prop()是jquery版本1.6+中添加的。你需要使用jquery最新版本。

答案 2 :(得分:0)

请更新您的jquery链接,它也可用于其他功能。 使用以下jquery链接版本来处理prop。你只需要改变 ID ,休息一切都很好。而Jquery将处理所有事情

Jquery link

答案 3 :(得分:0)

我认为版本1.3支持:checked选择器:

if($(this).is(':checked'))

如果您不想升级到最新版本的jQuery,请使用它,因为它是一个旧项目,您将不得不在其中更改很多内容。