QuoteProductService() という JavaScript で「クラス」を作成しました。以下を参照してください。プロトタイプに 2 つの関数を追加しましたが、もう一方の関数 (getFakeQuoteProducts) 内の jquery $.each 内から関数の 1 つ (getQuoteProductFromArray) を呼び出そうとしています。これはうまくいきません。「this.」を追加しようとしましたが、.each 内の「this」がループ内の現在の要素を参照しているため、これも機能しません。
どうすればいいですか?
function QuoteProductService() {
}
QuoteProductService.prototype.getQuoteProductFromArray = function(quoteproductarray, quoteproductid){
var founditem=null;
// do stuff
return founditem;
}
QuoteProductService.prototype.getFakeQuoteProducts = function(){
// do something to fill the mappedQuoteProducts array
$.each(mappedQuoteProducts, function (index, quoteproduct) {
if (quoteproduct!=-null) {
if (quoteproduct.parentid != "") {
// this is where it goes wrong :
var parent = getQuoteProductFromArray(mappedQuoteProducts, quoteproduct.parentid);
if (parent != null) {
parent.attachChild(quoteproduct);
}
}
}
});
}