2

以下の jsp のように、テキスト ボックスが Transfer Object から値を受け取るとします。

<INPUT TYPE="text" NAME="test" ID="test" value="<%=testTO.getTest()%>">

ただし、getTest が null を返した場合は null が表示されます。

使い方 ?: スクリプトレットを使用して、値が null の場合は空白を表示し、それ以外の場合は TO から返された値を表示します。

4

6 に答える 6

3
testTO.getTest() == null ? "" : testTO.getTest()

これを試してみてください、きっとうまくいきます。

于 2011-11-22T13:16:00.353 に答える
2

WebLogic Server を使用している場合は、設定があります ( Using the WebLogic JSP Compiler を参照) 。

-noPrintNulls

Shows "null" in jsp expressions as "".

nullこの場合を防ぎます。コンテナに同様の機能がある場合があります。利点: コードの変更は不要です。これはweblogic.xmlでも設定できると思います。

于 2011-11-22T12:45:24.247 に答える
1

JSPでヌルスペースを非表示にするには:-

それがあなたに役立つかどうかはわかりませんが、私の場合はうまくいきました。

私はweb-logic10.3を使用しており、nullを非表示にしたいjspは私のWebアプリケーションの一部です。

手順:

  1. パッケージエクスプローラでWeblogic.xmlを見つけます。

  2. このWeblogic.xmlを開きます。

  3. Weblogic.xmlの[JSP]タブをクリックします。

  4. [出力オプション](右上)の[JSP]タブで、[Nullの印刷]チェックボックスをオフにしました。

  5. アプリケーションをビルドしてデプロイすると、テキストボックスにNullが表示されなくなります。

于 2012-10-10T13:27:34.090 に答える
0

使用ELまたはJSTL表現。式言語はヌルセーフです

于 2011-11-22T14:11:34.613 に答える
0
if(testTO.getTest()!=null) {    
out.print("<input type=\"text\" name=\"test\" id=\"test\" value=\""+testTO.getTest()+"\">");}
else
{
out.print("<input type=\"text\" name=\"test\" id=\"test\" value=\"\">");
}
于 2011-11-22T12:54:39.847 に答える
0

空白を印刷するには、次のように使用します。

<INPUT TYPE="text" NAME="test" ID="test" value="<%= ((testTO.getTest()==null)?"":testTO.getTest()) %>">

この条件を追加してください

(&& testTO.getTest().length() == 0)

すでに文字列を返している場合、そうでない場合はこれを使用する必要があります

(&& testTO.getTest().toString().length() == 0)
<INPUT TYPE="text" NAME="test" ID="test" value="<%= ((testTO.getTest()==null && testTO.getTest().length() == 0)?"":testTO.getTest()) %>">
于 2011-11-22T12:25:05.507 に答える