ajax - 将 jquery slider 绑定(bind)到 dom

标签 ajax jquery-ui dom

我的网页的 ajax 部分中有一个 jquery UI slider 。如果我用 ajax 重新加载这部分, slider 就会消失。我想我需要将 slider 附加到 DOM,但看起来它需要附加一个事件,例如:

$(".radio").on("click", function () {

但我不知道我需要在那里附加哪种事件?

谢谢

当前的html:

$(function() {
  var handle = $("#custom-handle");
  $("#custom-handle").text(sizes[0].value);
  $("#slider").slider({
    create: function() {},
    min: 0,
    max: sizes.length - 1,
    step: 1,
    slide: function(event, ui) {
      handle.text(sizes[ui.value].value);
    }
  });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.min.js"></script>
<div id="slider">
  <div id="custom-handle" class="ui-slider-handle"></div>
  <br>
</div>

最佳答案

I've got a jquery ui slider in an ajax part of my webpage. if I'm reloading this part with ajax, the slider disappears.



您是否正在替换 ajax 中的 slider HTML 代码?即你要替换这个div吗?
<div id="slider">
  <div id="custom-handle" class="ui-slider-handle"></div>
  <br>
</div>

如果是这种情况,那么我认为问题不在于绑定(bind)...您是否尝试在 ajax 调用完成后重新初始化 slider ?
$.ajax({
    type: 'post',
    url: 'some url',
    success: function(data) {                       
        initializeSlider();
    }
});      

function initializeSlider() {
    $("#slider").slider({
        create: function() {},
        min: 0,
        max: sizes.length - 1,
        step: 1,
        slide: function(event, ui) {
            handle.text(sizes[ui.value].value);
        }
    });
}

关于ajax - 将 jquery slider 绑定(bind)到 dom,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54716948/

相关文章:

javascript - 如何在 jQuery 小部件中使用动态属性值

ajax - jquery mobile 取消 pagebeforeshow 事件

php - Ajax 动态读取数据库

javascript - 使用 jQuery/AJAX 提交表单,提交时无法阻止页面刷新?

Jquery Multiselect onblur方法

javascript - jQuery 日期选择器日计数

javascript - HTML 元素仅在输入提示后显示

javascript - 提交登录表单而不单击登录按钮

javascript - 在带有图像映射的 Firefox 和 Opera 中,顶部偏移返回不正确

javascript - &lt;script&gt; 未在 AJAX 中返回