2013-04-28 182 views
0

我是新來的JavaScript,我正在使用和享受Last.fm的API的項目。動態設置輸入值

但我的問題是: 我會讓2場:

第一:樂隊的名字

二:對於球迷的

當進入帶我會的名稱向last.fm API發送請求,但即使在那裏,我的表現也不錯。

問題是,當我收到請求時,我希望它自動放入「For fans of」字段。

我嘗試使用事件onkeypress,onkeydown ..但沒有太多的成功。

任何人有任何建議嗎?

的請求通過這些文件進行: github.com/fxb/javascript-last.fm-api

我的代碼如下:

的Javascript:

/* Create a cache object */ 
var cache = new LastFMCache(); 

/* Create a LastFM object */ 
var lastfm = new LastFM(
{ 
    apiKey : 'XXXXX', 
    apiSecret : 'XXXXXX', 
    cache  : cache 
}); 

function getName() 
{ 
    var bandname = $('#bandname').val(); 
    var forfansof = $('#forfans').val(); 
    forfansof = bandname; 

    /* Load some artist info. */ 
    lastfm.artist.getSimilar(
    { 
     artist: bandname 
    }, 
    { 
     success: function(data) 
     { 
     /* Pega os 3 nomes das bandas similares */ 
     for(var i = 0 ; i < 3 ; i++) 
     { 
      var artist = data.similarartists.artist[i].name; 
      $('#forfans').val($('#forfans').val() + artist + ", "); 
     } 

    }, 
    error: function(code, message) 
    { 
     $('#forfans').val("Nenhum artista encontrado."); 
    } 
}); 
} 

HTML:

<form action="" method="post"> 
    <input name="bandname" id="bandname" value="" onkeypress="javascript:getName();"> 
    <input name="forfansof" id="forfans" style="width:300px;" value=""> 
</form> 
+0

您如何收到請求?它是AJAX還是什麼? – Ivan 2013-04-28 00:29:35

+0

@Ivan我不知道哈哈,我從這個網站開始了這個項目:https://github.com/fxb/javascript-last.fm-api。但是我對這個請求沒有問題,但是自動把他放到了這個領域。謝謝。 – 2013-04-28 00:38:36

+0

@RomuloArgolo我只是認爲,如果它與AJAX一起使用,那麼你可以在裏面放置成功:'function(){}'一些代碼將你的數據放到你想要的字段中 – Ivan 2013-04-28 00:44:14

回答

0

我已經把你從GitHub獲得的代碼變成小提琴,但我不知道API的任何內容來說明接下來會發生什麼。

改變我做以修復在執行console.log顯示即時錯誤

HTML

<form action="" method="post"> 
    <input name="bandname" id="bandname" value=""> 
    <input name="forfansof" id="forfans" style="width:300px;" value=""> 
</form> 

的JavaScript

的document.getElementById( 「bandname」)。的addEventListener( 「keypess」,getName,false);

jsfiddle