1

このコードを機能させるのに問題があります。SC.get() で「q」、「bpm」、または「genres」パラメーターを使用して静的検索を実行できます。ただし、変数 (「カテゴリ」) を使用して動的にしようとすると、値は正しく渡されますが、実行された検索は一致しません。

function getTracks(){
    query = document.getElementById('search').value;
    category = document.getElementById('category').value;

    SC.get('/tracks', { category : query}, function(tracks) { 
                console.log(query);
        console.log(category);
            ... rest of search code
            }

HTML 内:

        <form>
            Search by Title: <input type="text" name = "search" id = "search">
                            <select id = "category">
                            <option value = "genres">Genre</option>
                            <option value = "q">Title</option>
                            <option value = "bpm">BPM</option>
                            </select>

        <input type="button" onclick = "getTracks()" value="Submit"/>
        </form>

足りないものはありますか?Console.log は「検索」値と「カテゴリ」値の両方の正しい値をキャッチしますが、API はそれらが null であるかのように返します。

4

1 に答える 1

1

あなたの例で{ category: query }category、変数categoryを取得してキー名として割り当てるのではなく、キー名として割り当てています。これは Javascript の矛盾のビットです。

あなたはこれをしたい:

parameters = {};
parameters[category] = query

SC.get('/tracks', parameters, function(tracks…
于 2013-06-05T09:47:33.050 に答える