2011-11-09 11 views
0

私は、変数cに設定したURLを連結するいくつかのJavaScript関数を持っています。私はその後、jQote2にその変数を渡すようにしてみてください。余分な変数とパラメータをjQote2に渡すには?

$.get("emptyReq.tpl", function(tmpl,c) { 
    $("#reqs").jqoteapp(tmpl, result, c); 
}); 

emptyReq.tmplでは、私は次のことをやっている:

<tr id="row"> 
    <td name="id" class="id"><a href="<%=this.c%>"><%= this.FormattedID %></a></td> 
    <td name="name" class="name"><%= this._refObjectName %></td> 
    <td name="state" class="state"><%= this.ScheduleState %></td> 
    <td name="owner" class="owner"></td> 
</tr> 

私はバリエーションのカップル(this.cとCを試してみました)、さまざまな変数を試しましたが、URLを正しく表示することができません。 C

コンソールで未定義としてラベル、およびURLのようなものされて終わるされています。代わりにhttps://rally1.rallydev.com/slm/rally.sp#/2735190513d/detail/userstory/4599269614

のようなものであるC実際http://127.0.0.1/xampp/py2/undefined適切にパラメータを渡す方法はあります?または、.tmplファイル自体で連結を行うはずですか?

参照として使用しているものは、jQote Referenceです。

答えて

0

rishimaharaj、

jqoteapp方法の第三のPARAMTERは、呼毎にテンプレートタグ(デフォルトで<% ... %>)を変更するために使用されます。あなたがテンプレートに追加のデータを渡す必要がある場合は、2つのオプションがあります。

  1. を(cdataパラメータにグローバル変数(私も、それをお勧めしません)
  2. コピーcの値を確認しますお勧めします):

    テンプレートデータの種類を考慮する必要があります。つまり、1つのオブジェクトが オブジェクトの配列とは異なります。

    $.get("emptyReq.tpl", function(tmpl,c) { 
        var data; 
    
        // 'result' seems to be a global var, thus making a copy is a good idea. 
        // Copying needs to take into account the type of 'result' 
    
        if (Object.prototype.toString(result) === '[object Array]') { 
         data = result.slice(0); 
        } else { 
         data = [$.extend({}, result)]; 
        } 
    
        // Now it is safe to add 'c' to the wrapping array. This way 
        // we won't override any homonymous property 
        data.c = c; 
    
        // Call the processing with our local copy 
        $("#reqs").jqoteapp(tmpl, data); 
    }); 
    

    あなたはこれを変更したら、テンプレート 、ラムダの固有財産dataを通じてcにアクセスすることができます:

    <tr id="row"> 
        ... <a href="<%= data.c %>"><%= this.FormattedID ... 
    </tr> 
    

よろしく、
aefxx

関連する問題