2017-11-22 12 views
0

ノードJS/MySQL DB上のポケモン名による検索フィルタの実装に問題があります。私が検索すると「検索/キー=定義されていない404(見つからない)」というアイデアはありますか?ここに私の探索経路検索機能の実装ノードJS/MySQL

ここ
router.get('/search', function(req, res){ 
     var mysql = req.app.get('mysql'); 
     var sql='SELECT pokemonname FROM pokemon WHERE pokemonname LIKE "%' + req.key.query + '%'; 
     sql = mysql.pool.query(sql, function(error, results, fields) { 
       if(error) { 
        res.write(JSON.stringify(error)); 
        res.end(); 
       } else { 
         res.status(200); 
         res.end(); 
     } 
    }); 
}); 

である私のハンドルは、検索バー/サーチボタンを

<table id="table"> 
    <thead> 
     <th>Pokemon Name </th> 
     <th>Evolution Level </th> 
     <th>Move Name </th> 
    </thead> 
    <input type="text" class="search form-control" id="searchinput" placeholder="Pokemon Name"> 
    <input type="button" class="btn btn-primary" value="Search" onclick="getUsers({{id}})"/> 
     <br> 
    <tbody> 
     {{#each pokemon}} 
     <tr> 
      <td>{{pokemonname}}</td> 
      <td>{{evolutionlevel}}</td> 
      <td>{{movename}}</td> 
      <td><button onclick="deletePokemon({{id}})">Delete</td> 
     <td><a href="/pokemon/{{id}}">Update</a></td> 
     </tr> 
     {{/each}} 
    </tbody> 

とjQueryでようやく私のsearch.js機能

function getUsers(searchinput){ 
     $.ajax({ 
       type: 'GET', 
       url: '/search/?key=' + searchinput, 
       success: function(result){ 
         window.location.reload(true); 
       } 
     }) 
}; 

ありがとうをレンダリングするファイルでありますヘルプ

答えて

0

{{id}}の中で最も多く発生します#eachループはidpokemonオブジェクトのプロパティであることを示唆しています。一方、getUser({{id}})はこのループの外側で使用され、undefinedがバインディング変数idに渡されます。あなたの代わりにgetUser関数にテキスト入力の値を渡したいと思うので、あなたの仮パラメータの名前。 searchinput。あなたのボタンに{{input value=searchinput}}Ember helperからgetUser({{searchinput}})まで使うことができます。また、AJAXサービスと呼ぶencoding query paramsに注意を払う。

関連する問題