0
範囲外の要素に問題がありますが、エラーが発生していないため、修正方法がわかりません。私は関連性のあるものを含めるために私のコードを縮小しました。要素は範囲外ですか?
(function(){
var zdf = {
theme : $('#zdf_theme')
};
zdf.setupPopup = function(){
zdf.loadThemes();
}
zdf.loadThemes = function() {
zdf.theme
.editableSelect({
effects: 'slide'
})
.on('select.editable-select', function(e, li) {
zdf.theme.attr("data-value", li.attr('value'));
});
});
}
}();
うまくいけば、私は問題を特定するのに十分なコードを提供してきましたが、基本的にすべてがライン
zdf.theme.attr("data-value", li.attr('value'));
まで働いているオブジェクトにzdf.theme
を選択していないようです私はそれを実際のセレクタ$('#zdf_theme')
と交換すると問題なく動作します。
編集可能な選択は、このコードベースは、任意の入力は素晴らしいことだhttps://github.com/indrimuska/jquery-editable-select
です!
loadThemes関数の中で 'console.log(zdf.theme)'を実行すると、何が表示されますか? 'zdf.theme'の代わりに' this.theme'を使うこともできます –
.onハンドラの中で 'zdf.theme'の代わりに' $(this) 'を使うことができるのだろうかと思います。 – James
範囲は問題ありません。 .attr()を.prop()に変更してみてください。私はそれが空の属性の問題かもしれないと思う。 attr()とprop()の詳細は、http://stackoverflow.com/questions/5874652/prop-vs-attrを参照してください。また、.data( 'value')を使用することもできます。 –