使用数据库中的隐藏输入值初始化jquery滑块

使用数据库中的隐藏输入值初始化jquery滑块,jquery,jquery-ui,asp.net-mvc-2,slider,Jquery,Jquery Ui,Asp.net Mvc 2,Slider,我使用一个滑块作为屏幕的用户输入。基本上,它是一个批量更新屏幕,其中有一个具有多行的表,因此有多个滑块。我创建了它,这样隐藏的值就是表单中发布的值 <td> <input class="percentageProvidedHidden" type="hidden" name='<%= "Values[" + i + "].Percentage" %>' value='<%=item.Percentage %>' />

我使用一个滑块作为屏幕的用户输入。基本上,它是一个批量更新屏幕,其中有一个具有多行的表,因此有多个滑块。我创建了它,这样隐藏的值就是表单中发布的值

<td>
    <input class="percentageProvidedHidden" type="hidden" name='<%= "Values[" + i + "].Percentage" %>' value='<%=item.Percentage %>' />
            <div class="percentageProvidedSlider"></div>
</td>

您在
这一点上是正确的
不正确,但更重要的是,在您声明对象时(如果
这一
是滑块对象)
这一
是尚未添加到DOM的对象,因此没有父对象。因此,您必须使用以下内容:

$('.percentageProvidedSlider').each(function() {
 var $sld = $(this); // is the current div.percentageProvidedslider
  $sld.slider(
    {
        min: 0,
        max: 100,
        step: 25,
        value: $sld.parents('tr').find('input.percentageProvidedHidden').val(),
        slide: function(e, ui) {
            var mypos = ui.value;
            $(this).find('.ui-slider-handle').text(ui.value);
        },
        change: function(event, ui) {
            var myVal = $(this).slider("option", "value");
            $(this).parents('tr').find('input.percentageProvidedHidden').val(myVal);

            var myDropDown = $(this).parents('tr').find('select.verified');

        }
    });

});

我想我明白了。在上面的代码之后,我添加了以下内容:

 $('.percentageProvidedSlider').each(function() {
var myVal = $(this).parents('tr').find('input.percentageProvidedHidden').val();
$(this).slider("option", "value", myVal);
});

这似乎很好。

是的,我是jquery新手,只是读了一点$(这个)。:)感谢您的解决方案,我最终发布了我自己的内容,而不知道您已经发布了。上述方法的优点是,您没有两次运行所有.percentageProvidedSlider div,而只是一次。
 $('.percentageProvidedSlider').each(function() {
var myVal = $(this).parents('tr').find('input.percentageProvidedHidden').val();
$(this).slider("option", "value", myVal);
});