2017-09-01 3 views
0

私のWebアプリケーションはJava(バックエンド)で書かれています。これはSpring Frameworkを使用します。javascriptは私のc:を受け入れません

私のコントローラがフロントエンドjspにモデルを返すとき、その値からいくつかの値を取得したいと思います。

このためには、JSTLとExpression Languageのライブラリを使用します。

<c:if test="${not empty model.ladungstraegerNummer}"> 
        yadcf.exFilterColumn(oTable, [[3, [' 
        <c:out value="${model.ladungstraegerNummer}"/> 
        ']]]); 
        </c:if> 

まず私は(yadcfはjQueryとのDataTableの上にフィルターの拡張機能です)変数が空であるかどうかを確認(時にはそれはある)、その後、それはJavascriptのコードに書かれています。

Cの結果:うちは、次のようになります。

yadcf.exFilterColumn(oTable, [[3, ['WNC402']]]); 

アポストロフィが重要です。私のコード出力は:

yadcf.exFilterColumn(oTable, [[3, [' 
          WNC402 
          ']]]); 

どういうわけかJavascriptはこの文字列を受け入れません。

問題があったため、私の質問を編集しました。 c:アウトは機能し、アポストロフィは適切な場所にあります。私は、JS関数がそれを使うことができないように、私は文字列内にいくつかのホワイトスペースを持っていたと思う。 1以下

+0

アポストロフィはc:outタグの外にあり、JSPコード内に直接あります。だからそれはc:とは関係がありません。 –

答えて

0

試してみてください。

<c:if test="${not empty model.ladungstraegerNummer}"> 
         yadcf.exFilterColumn(oTable, [[3, [ 
         <c:out value="'${model.ladungstraegerNummer}'"/> 
         ]]]); 
         </c:if> 

JB Nizetの上記のコメントは、理にかなっています。

0

私は自分のコードを作成しましたが、これは次のようになります。私はいくつかの空白を削除しました。

 <c:if test="${not empty model.ladungstraegerNummer}"> 
     yadcf.exFilterColumn(oTable, [[3, ['<c:out value="${model.ladungstraegerNummer}"/>']]]); 
     </c:if> 

出力:

yadcf.exFilterColumn(oTable, [[3, ['WNC402']]]); 

はあなたの努力の男をいただき、ありがとうございます。

関連する問題