2013-05-08 2 views
1

У меня есть следующие поля:дисплея возврат каретки из MySQL

mysql> select content from campaign where cid = 489; 
+------------------------------+ 
| content      | 
+------------------------------+ 
| hi 
    how are you? 
    wie gehts? | 
+------------------------------+ 

и хочу отобразить на HTML, но когда я использовал

<sql:transaction dataSource="${dataBase}"> 
    <sql:query var="tAdmin"> 
     SELECT content FROM campaign 
    </sql:query> 
</sql:transaction> 

<c:forEach var="row" items="${tAdmin.rows}" varStatus="totalRow" step="1"> 
    <c:set var="myContent" value="${row.content}"/> 
</c:forEach> 

, а затем:

<script language="JavaScript" type="text/JavaScript"> 
    element.innerHTML='${myContent}'; 
</script> 

его в браузере было пусто. Есть идеи? заранее заблаговременно

ответ

-1

Я наконец-то нашел эту EL wiki stackoverflow и сделал что-то вроде следующего:

1. Create new line to <br/> conversion file so-called Functions.java under WEB-INF/org/global: 

    package org.global; 

    public final class Functions { 
    private Functions() {} 

    public static String nl2br(String string) { 
      return (string != null) ? string.replace("\r\n", "<br/>") : null; 
     } 
    } 

2. Create new TLD file so-called Functions.tld under WEB-INF/tld or wherever TLD files reside: 

    <?xml version="1.0" encoding="UTF-8" ?> 
    <taglib 
     xmlns="http://java.sun.com/xml/ns/javaee" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd" version="2.1"> 

    <tlib-version>1.1</tlib-version> 
    <short-name>New_Functions</short-name> 
    <uri>http://global.org/functions</uri> 

    <function> 
     <name>nl2br</name> 
     <function-class>org.global.Functions</function-class> 
     <function-signature>java.lang.String nl2br(java.lang.String)</function-signature> 
    </function> 

    </taglib> 

3. Add this line on the respective .jsp file : 

    <%@taglib uri="http://global.org/functions" prefix="f" %> 

    and finally use the function prefix : 

    ${f:nl2br(row.content)} 
0

Вы можете попробовать что-то вроде этого: select replace (temp, '
', CHR (13) || CHR (10)) INTO outString from dual;

Это Oracle SQL btw.

Таким образом, вы бы написать свой текущий SQL (SELECT FROM содержание кампании) в качестве подзапроса:

выберите заменить (SELECT FROM содержание кампании '< бр/>', CHR (13) || CHR (10)) от двойственного;

+0

Я попытался с SELECT, REPLACE (содержание, «\ г \ п», «») FROM кампании и работал только в командной строке, но все еще не отображается в браузере. Есть идеи? –

+0

Хм, не уверен, но, возможно, вам нужно сбежать из команды C: set escapeXml. http://docs.oracle.com/cd/E17802_01/products/products/jsp/jstl/1.1/docs/tlddocs/c/out.html – greendave11

+0

Где вызывается JavaScript? Есть ли еще эта страница, потому что я думаю, что моя первоначальная мысль была совершенно неправильной.
Когда вы говорите, что страница пуста, вы имеете в виду, что ваша функция JavScript (element.innerHTML = '$ {myContent}';) работает вообще? – greendave11

Смежные вопросы