2012-02-12 8 views
-1

アイテムのリスト(Webサービスによって作成されたXMLから動的に作成されます)の選択ボックスを実行していますが、選択した値を正しく引き出すことができません。ここで何が起こっているのですか?Javascriptで選択したアイテムの値が正しく引き抜かれない

onchange="changeFunction(this.options[this.selectedIndex].value)" 

を私は受けてるもの::

function (a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!= 

を、私は私が使用している唯一のことは、いくつかの自己構築された機能やjQueryのですよ、私が送信しています何

どのような助けも素晴らしいでしょう。

編集:ここに変更機能があります。与えられた選択項目の値が設定されたフォームを作成するだけです。ここで

function changeFunction(selection) { 
    console.log(selection); 
    $('#right').empty(); 
    var addNewFields = 'these will be the fields'; 
    $('#right').append(addNewFields); 
} 

は、問題の選択である:

<select class="userSelection" id="userSelection" size="10" style="width:150px;" onchange="changeFunction(this.options[this.selectedIndex].value)"></select> 

これは文字通りのHTML部分のすべてのコードです。それはajaxを介して設定されており、左に1つ、選択に1つ、右に1つ、ユーザーのコンテンツを含む2つのdivがあります。

だけで笑いのために、ここでのオプションを作成するコードは次のとおりです。

あなたはそれが引数だとして、それはイベントオブジェクトを渡される関数にDOMオブジェクトのイベントハンドラを設定し
 var optionTag = '<option value="' + $(this).find('optionID').text + '" >' + $(this).find('optionName').text() + '</option>'; 
      $('#userSelection').append(optionTag); 
+1

? 'changeFunction'はどのように見えますか?それは何をするためのものか? –

+0

私はchangeFunction内でconsole.logを使用して、何が送信されているかを確認しています。私はそれが何をしているのかを示すchangeFunctionで更新しています。 –

+0

偉大な、またあなたのマークアップのビットを示しています。たとえば、このonchange属性を適用するDOM要素です。 –

答えて

1
var optionTag = '<option value="' + $(this).find('optionID').text + '" >' + $(this).find('optionName').text() + '</option>'; 

次のようになります。$(this).find('optionID').text$(this).find('optionID').text()でなければならないこと

var optionTag = '<option value="' + $(this).find('optionID').text() + '" >' + $(this).find('optionName').text() + '</option>'; 

注意してください。

またはより良い、このスープを避けるために:あなたはこれを受けている

var optionTag = $('<option/>', { 
    value: $(this).find('optionID').text(), 
    html: $(this).find('optionName').text()  
}); 
+0

あんまり優しくありがとう。私はそれがとてもばかげたものだとは信じられません。オイベイ。 –

+0

@SpencerCole、私は助けることができてうれしい。他の質問がありますか?このスレッドを閉じることを検討するかもしれませんか? –

+0

私が混乱している唯一のことは、 "Uncaught TypeError:オブジェクト#のプロパティ 'value'が関数ではないというエラーです。 –

0

selectBox.onchange = function(event) { 
    changeFn(this.options[this.selectedIndex].value); 
}; 
関連する問題