从jsp

时间:2016-12-06 11:43:59

标签: jquery html

我在下面定义了div,我正在调用jquery:

<div class="progressbar" data-progressrel="30"></div>

jQuery的:

$(function() {
    var val = $(this).data('progressrel');
        alert(val);
    $(".progressbar").progressbar({
            value:val    
        });
    });

将警报视为未定义。

请帮助我,因为我是jQuery的新手。提前谢谢

2 个答案:

答案 0 :(得分:1)

$(this)函数内的{p> ready直接没有上下文,只需使用类名:

var val = $('.progressbar').data('progressrel');

希望这有帮助。

$(function() {
  var val = $(".progressbar").data('progressrel');
  alert(val);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="progressbar" data-progressrel="30"></div>

要获取所有divs pregressrel,您可以使用.each()

$(function() {
  
  $(".progressbar").each(function(){
    var val = $(this).data('progressrel');
    alert(val);
  })
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="progressbar" data-progressrel="30"></div>
<div class="progressbar" data-progressrel="40"></div>
<div class="progressbar" data-progressrel="50"></div>
<div class="progressbar" data-progressrel="60"></div>

答案 1 :(得分:0)

您需要按如下方式访问div,您对this对象的引用无效。

 $(function() {
   var val = $("div.progressbar").data('progressrel');
   alert(val);
 });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="progressbar" data-progressrel="30"></div>