使用input type=text value=str取值不完全解決方案

字號(hào):


    今天碰到一個(gè)很奇怪的問(wèn)題,看看如下代碼:
    SimpleDateFormat dateFormat = new SimpleDa
    代碼如下:
    teFormat("yyyy年MM月dd日 E ");
    String date = dateFormat.format(new Date());
    >
    本意是想要打印出來(lái)XXXX年XX月XX日 星期X
    問(wèn)題出在如下代碼,當(dāng)我想要取得格式化之后的數(shù)據(jù)時(shí),在value=方法取值時(shí),只能取到“XXXX年XX月XX日”,后面的“星期X”一直取不到
    代碼如下:
    <td>
    <label>
    <input type="text" value=<%=date%> disabled />
    </label>
    </td>
    ①后來(lái)想到,有可能是HTML轉(zhuǎn)義問(wèn)題,于是就將"yyyy年MM月dd日 E "中的空格全部去掉了,結(jié)果可以正常取值了或者改為“yyyy年MM月dd日-E”
    ②還有一種方法,只要使用轉(zhuǎn)義字符將準(zhǔn)備顯示的字符串中內(nèi)容逐個(gè)替換即可
    代碼如下:
    <%
    String result = "";
    for (int i = 0; i < date.length(); i++) {
    switch (date.charAt(i)) {
    case '<':
    result += "<";
    break;
    case '>':
    result += ">";
    break;
    case '&':
    result += "&";
    break;
    case '"':
    result += "\"";
    break;
    case '\'':
    result += "'";
    break;
    case ' ':
    result += "&nbsp;";
    break;
    default:
    result += date.charAt(i);
    }
    }
    %>
    參考內(nèi)容如下:
    HTML原代碼 顯示結(jié)果 描述
    &lt; < 小于號(hào)或顯示標(biāo)記
    &gt; > 大于號(hào)或顯示標(biāo)記
    &amp; & 可用于顯示其它特殊字符
    &quot; " 引號(hào)
    &reg; ® 已注冊(cè)
    &copy; © 版權(quán)
    &trade; ™ 商標(biāo)
    &ensp;  半個(gè)空白位
    &emsp;  一個(gè)空白位
    &nbsp; 不斷行的空白