0

入力ミスについて申し訳ありませんが、英語は私の母の言語ではありません。私はこのコードを通常のhtmlで記述し、xhtmlファイルに変換することができました。に示されている値をに送信したいと思い<input id="f_date">ます<h:inputText>

<script src="../js/jscal2.js" type="text/javascript" xml:space="preserve"></script>
<script src="../js/lang/en.js" type="text/javascript" xml:space="preserve"></script>
<link rel="stylesheet" type="text/css" href="../css/jscal2.css" />
<link rel="stylesheet" type="text/css" href="../css/border-radius.css" />
<link rel="stylesheet" type="text/css" href="../css/steel/steel.css" />

<h:form id="form1">
  <table>
    <tr>
      <td colspan="4" id="cont"></td>
    </tr>
    <tr>
      <td>
        <input style="text-align: center" name="date" id="f_date"
        size="14" />
        <h:inputText id="f_date" value="#{solicitud.fechaI}" maxlength="10" size="10" valueChangeListener="#{solicitud.fechaIText}">
            <a4j:ajax event="keyup" render="fechaI, fIni" status="statusFI"/>
        </h:inputText>
      </td>
      <td>
        <input style="text-align: center" name="hour" id="f_hour" size="2" />
      </td>
      <td>
        :
      </td>
      <td>
        <input style="text-align: center" name="minute" id="f_minute"
        size="2" />
      </td>
    </tr>
  </table>
</h:form><script type="text/javascript" xml:space="preserve">//<![CDATA[


  function updateFields(cal) {
          var date = cal.selection.get();
          if (date) {
                  date = Calendar.intToDate(date);
                  document.getElementById("f_date").value = Calendar.printDate(date, "%Y-%m-%d");
          }
          document.getElementById("f_hour").value = cal.getHours();
          document.getElementById("f_minute").value = cal.getMinutes();
  };

  Calendar.setup({
          cont         : "cont",
          showTime     : 12,
          onSelect     : updateFields,
          onTimeChange : updateFields
  });

//]]></script>

よろしくお願いします

4

1 に答える 1

0

<h:inputText>JS カレンダーを設定するときの入力要素を再利用する必要があります。引数を使用inputFieldして、JSF によって生成された入力の ID を渡します。そうかもしれませんform1:f_dateが、htmlソースを確認して確認してください。

編集:

updateFields に「form1:」を含むプレフィックス ID"

document.getElementById("form1:f_date")

そして取り除く

<input style="text-align: center" name="date" id="f_date"
       size="14" />
于 2012-03-26T20:30:33.317 に答える