0

私は、配列から選択された文字列に応じてアイテムの詳細を表示する予定の jQuery UI 単一スライダーに取り組んできました。これまでのところ、アイテムの価格が表示されていますが、主に行う必要があるのは、ハンドルがオンになっているスライダーのステップに応じて、さまざまな html コンテンツを表示することです (おそらくテーブルになるでしょう)。私はこれまでにこのコードを持っています:

<!doctype html>

<html lang="en">
<head>
  <meta charset="utf-8" />
  <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.2/themes/smoothness/jquery-ui.css" />

  <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
  <script src="http://code.jquery.com/ui/1.10.2/jquery-ui.js"></script>
<script type="text/javascript">
$(document).ready(function() {
    var valMap = [
"1.5",
"2.5",
"5.5",
"10.5"
];
    $("#slider").slider({
        min: 0,
        max: valMap.length - 1,
        value: 0,
        animate: false,
        change: function(event, ui) {                        
            $("#amount").val('$' + valMap[ui.value] + '0');
        }       
    });
                $("#amount").val('$' + valMap[$("#slider").slider("value")] + '0');
});
</script>
</head>
<body>
<br /><br />
<center>
<div id="slider"></div>

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

</center>

「金額」入力エリアの値をチェックする「if」ステートメントを設定しようとしましたが、うまくいきませんでした (まったく機能しませんでした、笑)。どんな助けでも大歓迎です!

上記のコードの例を次に示します: http://jsfiddle.net/SDDJ/zHMYc/1/

4

1 に答える 1

2

スライダーの値を使用して、表示するコンテンツを決定できます。おそらく次のようなもの: -

<div class="content" id="content0"> ... </div>
<div class="content" id="content1"> ... </div>
<div class="content" id="content2"> ... </div>
<div class="content" id="content3"> ... </div>

次に、divに一致するui.valueを表示し、その他を非表示にします。

change: function(event, ui) {                        
  $("#amount").val('$' + valMap[ui.value] + '0');
  $('#content' + ui.value).show().siblings('div.content').hide();
}

ここにフィドルがあります

于 2013-04-08T09:26:54.877 に答える