0

今のところ、jQuery timepicker コンポーネントは、入力をクリックして呼び出されます。

これはタイムピッカーの設定です:

    <script>
     ...
oScript.text += "var timeId = '#' + '<portlet:namespace/>' + '_time';";
oScript.text += "$j(timeId).timePicker({startTime:new Date(0, 0, 0, 0, 0, 0), step: 30});";   
     ...
    </script>

これは timepicker の jsp 部分です (特定の ID を持つ入力):

<input id="<portlet:namespace/>_time" name="time" size="6" autocomplete="off" value="${eventTime}"
<img id="time-img" class="ui-timepicker" src="${eventTimeImage}" alt="..." title="..."/>

これで問題なく動作します。

imgのクリックを処理する場合、そのjsエラーは悲しいです、そのIDは「定義されていません」が、IDは結果のHTMLでレンダリングされたものと同じです

これは、タイムピッカーを呼び出すために、IMG タグのコードを変更したものです。

<img id="time-img" onClick="jQuery(<portlet:namespace/>_time).timePicker({startTime:new Date(0, 0, 0, 0, 0, 0), step: 30});" src="${eventTimeImage}"/>

引用符でidを試してみましたが、同じ結果です。

Timepickerはまったく可能ですか?私はonClickでそれを呼び出すことを意味します。それとも一度ロードされますか?

4

2 に答える 2

2

誰もしていない範囲でお答えしたいと思います。

そのため、onClick で Timepicker の呼び出しをハングさせるソリューションは、はるかに単純に見えます。

画像をクリックして入力にフォーカスするだけです:

<img id="time-img" onClick="jQuery('#<portlet:namespace/>_time').focus()"/>

プラグインの作成者に感謝: Timepicker サイト

したがって、このソリューションは、日付ピッカーなどを使用して、他の同様のケースで使用できます。

于 2009-12-02T10:01:01.710 に答える
0

別の可能性 (おそらくもっと単純) は、フィールドの背景画像として画像を使用することです。次に、ユーザーが画像をクリックすると、実際には入力をクリックしているので、ピッカーが希望どおりに表示されます。このソリューションには JS コードは必要ありません。例えば:

<input type="text" id="demo" />
<style type="text/css">
  #demo
  {
    background-image:url("image.png");
    background-position:right center;
    background-repeat:no-repeat;
  }
</style>
于 2010-05-10T17:21:09.163 に答える