0
私は非常にjQueryを新しくしました。私は、DOM要素を設定するためのプラグインを開発しています(私自身のために)html()
はajax呼び出しによって返されたコンテンツを持っています。例:jQueryはプラグイン内を見つけることができませんか?
<span id="a" class="scalar">?</span>
<span id="b" class="scalar">?</span>
<span id="c" class="scalar">?</span><!-- this will not be updated -->
stats.php
は、このようなJSONオブジェクトを返すために起こっている場合:{ a : 3, b : 7 }
結果のHTMLは、(各オブジェクトのプロパティは、プラグインが呼び出された選択の中id
と一致します)次のようになります。
<span id="a" class="scalar">3</span>
<span id="b" class="scalar">7</span>
<span id="c" class="scalar">?</span><!-- this will not be updated -->
これはプラグインの呼び出しと定義です。 質問は:なぜfind()
は、更新する要素を適切に選択できないのですか?
<script type="text/javascript">
$(document).ready(function() {
$('.scalar').scalar({ url : '../REST/stats.php' });
});
</script>
(function($) {
$.fn.scalar = function(options) {
var opt = $.extend({
url : 'REST/stats.php',
type : 'POST',
context: this,
dataTypeString : 'json'
}, options);
$.ajax($.extend(opt, {
success : function(obj) {
for(k in obj) {
if(!obj.hasOwnProperty(k)) continue;
console.log(this.find('#' + k));
}
}
}));
return this.each();
};
})(jQuery);