当JQuery滑块中的值更改时运行MySQL查询

时间:2013-05-06 04:16:10

标签: php javascript jquery mysql jquery-ui

每次用户完成更改屏幕上滑块的位置时,我希望运行SQL查询。例如,假设我将滑块设置为1,然后我希望检索ID为1的所有行。我想在滑动滑块时在屏幕上更新此信息。

我正在使用JQueryUI滑块。这是我正在处理的代码。我能做到这一点的最好方法是什么?

<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>jQuery UI Slider - Vertical slider</title>
    <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
    <script src="../../jquery-1.9.1.js"></script>
    <script src="../../ui/jquery.ui.core.js"></script>
    <script src="../../ui/jquery.ui.widget.js"></script>
    <script src="../../ui/jquery.ui.mouse.js"></script>
    <script src="../../ui/jquery.ui.slider.js"></script>
    <link rel="stylesheet" href="../demos.css">
    <script>
    $(function() {
        $( "#slider-vertical" ).slider({
            orientation: "vertical",
            range: "min",
            min: 0,
            max: 100,
            value: 60,
            slide: function( event, ui ) {
                $( "#amount" ).val( ui.value );
            }
        });
        $( "#amount" ).val( $( "#slider-vertical" ).slider( "value" ) );
    });
    </script>
</head>
<body>

<p>
    <label for="amount">Volume:</label>
    <input type="text" id="amount" style="border:0; color:#f6931f; font-weight:bold;" />
</p>

<div id="slider-vertical" style="height:200px;"></div>

<div class="demo-description">
<p>Change the orientation of the slider to vertical.  Assign a height value via <code>.height()</code> or by setting the height through CSS, and set the <code>orientation</code> option to "vertical."</p>
</div>
</body>
</html>

非常感谢:)

1 个答案:

答案 0 :(得分:1)

slide功能中,您需要向服务器发出ajax请求。该请求显然取决于您的应用程序的设置方式,但在应用程序中,您可以只运行查询所需的数据,并将查询结果返回给ajax调用。然后通过该响应,您可以做任何您喜欢的事情。例如,我会做类似以下的事情:

slide: function(event, ui) {
    $.get({
        url: "/app/address?id=" + ui.value,
        success: function(data, status, xhr) {
            ... Handle response here ...
        }
    });
}

我同意@vlzvl,但在幻灯片方法上运行它并不是一个好主意。更改方法会更好,因为你会大大减少ajax请求的数量,因为它只会在你停止滑动而不是滑块的每次移动时触发