jquery UIを使用してカレンダーを表示しようとしています

私はフレームワークのcodeigniterを使用しており、jqueryを使用して、ユーザが検索を実行する期間を選択して表示できるようにしています。私は日付とテキストフィールドを表示していますが、テキストフィールドをクリックすると、日付を選択するカレンダーはありません。 これは私の見解です。

<html>
<head>
<script type="text/javascript" src="<?php echo $jquery?>"></script>          
<script type="text/javascript">
$(function() {
    $( "#datepicker" ).ui-datepicker();
});

</script>
</head>
<body>
<div class="demo">

Date: <input id="datepicker" type="text">

</div><!-- End demo --> <div style="display: none;" class="demo-description">

The datepicker is tied to a standard form input field. Focus on the input (click, or use the tab key) to open an interactive calendar in a small overlay. Choose a date, click elsewhere on the page (blur the input), or hit the Esc key to close. If a date is chosen, feedback is shown as the input's value.

</div><!-- End demo-description --> www.msn.ca <?php echo form_open('search/submit'); ?> </body> </html>

サンプルコードから取得しました: http://jqueryui.com/demos/datepicker/ 参考資料jQuery UI 1.8.16を使用しています ここに何が間違っているのか分かりません。 誰かがコントローラーが関係していると思うなら、それはここにあります:

<?php
class calendarController extends CI_Controller{

    public function index()
    {
        $this->load->helper('url');
        $data['jquery'] = base_url("jquery.js");
        $this->load->view("jqueryView", $data);
    }
}
?>
0

3 答え

私はあなたのページにjQuery JSとCSSファイルへのリンクが表示されません。次のようなことを試してください:

<link href="Content/themes/base/jquery-ui.css" rel="stylesheet" type="text/css" />
<script src="Scripts/jquery-1.7.min.js" type="text/javascript"></script>    
<script src="Scripts/jquery-ui-1.8.16.min.js" type="text/javascript"></script>

ページのどこにでも配置することができます。ページがより速く表示されるように、最終的に改善します。あなたのコードのように、何も壊れていないことを確認するために、jQueryロード関数内でdatepicker()を使用してください

1
追加された
もちろんjQueryのUIはjQueryに依存しているので、jquery-1.7.min.jsはjquery-ui-1.8.16より上にあるはずです。申し訳ありません。
追加された 著者 AFD,
私はそれらを身体に加えて頭に入れるべきですか?
追加された 著者 Paul Kar.,
それはいいです。わかった。ありがとうございました :)
追加された 著者 Paul Kar.,

あなたはあなたのURLを間違って構築しています。

する必要があります:

$data['jquery'] = base_url().'jquery.js';

which gives in your view: http://www.yoursite.com/jquery.js.

私はそのスクリプトの実際の位置に疑念を持っています。あなたのフォルダ構造に合わせてそれを変更してください。 base_url()はこのようにあなたのURLをスラッシュで返します。

http://www.yoursite.com/

また、あなたは jQuery UIを読み込んでいないので、これも追加します(上記と同じ方法)

もう一つは、あなたの入力に name 属性がないので、phpによってフェッチされるようにするために必要です。そして、フォームの外にあるので、動作しません。これは単なるメモです。多分あなたはそのように使いたくないかもしれませんが、場合によっては...

0
追加された
あなたはかっこを使用しないので、あなたはそれを得る。 base_url()ではなくbase_url
追加された 著者 Damien Pirsy,
私は実際にそのドットを追加すると次のエラーが発生します:未定義定数の使用base_url - 'base_url'
追加された 著者 Paul Kar.,
したがって、base_urlで動作する場合は、コンパイラがbase_url()に編集していることを意味します。
追加された 著者 Paul Kar.,

jquery readyイベントハンドラの中にdatepickerの初期化を置くべきではありませんか?

そのようです:

$(document).ready(function(){

   $( "#datepicker" ).datepicker();

 });
0
追加された
$(function(){$( "#datepicker").datepicker();});ほぼ同じです。
追加された 著者 AFD,
PHP - 日本のコミュニティ [ja]
PHP - 日本のコミュニティ [ja]
4 参加者の

このグループではPHPについて話します。 パートナー:kotaeta.com