如何从输入中获取值并使用jQuery提交?

时间:2015-05-21 19:12:54

标签: javascript jquery ajax

我想获取输入的值而不提交/重新加载页面,然后使用它来向API发出get请求。这是html:

<form name="music_title" id="search_it">
   <input name="song_name" id="search_song" placeholder="Enter song to add" onsubmit="return searchSg()"/>
</form>

这是我为此而写的javascript

searchSg = function(){
    oForm = documents.forms[0]
    SC.get("/tracks", {q: oForm.elements["song_name"].value , limit: 20}, function(tracks){
        $(tracks).each(function(index, track) {
            //do stuff with track info
        });
    });
}
$("#search_song").submit(searchSg() { return false; });

但是这一切都没有被执行,表格仍在提交中。我尝试过使用ajax调用,但根本没有执行。我确保我的静态文件夹路径工作正常,并且我已经让其他功能正常工作了。似乎每当我尝试发出一个ajax请求时,javascript就不起作用了,现在我也无法通过这种形式获取数据。

1 个答案:

答案 0 :(得分:1)

试试这个:

$("#search_it").submit(function(ev){
    //Do stuff here
    var songName = $('#search_song').val();

    $.get('/tracks', {q : songName, limit: 20}, function(tracks){
       //Do something with the response(tracks) here
    });
   //You can call ev.preventDefault() but return false will do that for you..
   return false;
});