views:

44

answers:

2

http://www.ama3.com/anytime/

$(".pick_date").AnyTime_picker({ format: "%W, %M %D, %z" });

This is code to initialize AnyTime picker on .pick_date element. But if I append element then AnyTime doesn't work on it. Is there a way to make it work.

I tried this:

$('#submit-buton').live("click", function() {

    $.ajax({
        type: "POST",
        url: '/AddTask',
        dataType: 'html',
        success: function(data) { 
            $("#taskModule").append(data);              

            $(".pick_date").AnyTime_picker({ format: "%W, %M %D, %z" });
        }
    });

});

But no effect...

Any idea?

EDIT:

This works:

<div id="mydatepicker">
</div>

<input type="button" id="MyButton"  value="Append" />

<script type="text/javascript">

    $(function() {

        var mydatepickerHtml = 'English: <input type="text" id="field1" size="50" value="Sunday, July 30th in the Year 1967 CE" /><br/>Español: <input type="text" id="field2" value="12:34" />';
        $("#mydatepicker").append(mydatepickerHtml);

        $('#MyButton').live("click", function() {            
            // ...
        });

        AnyTime.picker( "field1",       { format: "%W, %M %D in the Year %z %E", firstDOW: 1 } );
          $("#field2").AnyTime_picker( 
              { format: "%H:%i", labelTitle: "Hora",
                labelHour: "Hora", labelMinute: "Minuto" } );

    });
</script>

But this doesn't...

<div id="mydatepicker">
</div>

<input type="button" id="MyButton"  value="Append" />

<script type="text/javascript">

    $(function() {  
        $('#MyButton').live("click", function() {
            var mydatepickerHtml = 'English: <input type="text" id="field1" size="50" value="Sunday, July 30th in the Year 1967 CE" /><br/>Español: <input type="text" id="field2" value="12:34" />';
            $("#mydatepicker").append(mydatepickerHtml);
        });

        AnyTime.picker( "field1",       { format: "%W, %M %D in the Year %z %E", firstDOW: 1 } );
          $("#field2").AnyTime_picker( 
              { format: "%H:%i", labelTitle: "Hora",
                labelHour: "Hora", labelMinute: "Minuto" } );
    });
</script>
+2  A: 

EDIT:

This works.

<div id="mydatepicker"> 
</div> 

<input type="button" id="MyButton"  value="Append" /> 

<script type="text/javascript"> 

    $(function() {   
        $('#MyButton').live("click", function() { 
            var mydatepickerHtml = 'English: <input type="text" id="field1" size="50" value="Sunday, July 30th in the Year 1967 CE" /><br/>Español: <input type="text" id="field2" value="12:34" />'; 
            $("#mydatepicker").append(mydatepickerHtml); 

            AnyTime.picker( "field1",       { format: "%W, %M %D in the Year %z %E", firstDOW: 1 } ); 
          $("#field2").AnyTime_picker(  
              { format: "%H:%i", labelTitle: "Hora", 
                labelHour: "Hora", labelMinute: "Minuto" } ); 
        }); 


    }); 
</script> 

I tried out this plugin in sample page on appended html. It works.

I think you should check the html data returned on ajax request. Does it contain pick_date element?

You can also check the $(".pick_date").length to verify that you are getting element.

Checkout my sample.

<html>
<head>

<link rel="stylesheet" type="text/css" href="anytimec.css" />
<script src="http://ajax.microsoft.com/ajax/jquery/jquery-1.4.2.js" type="text/javascript"></script>                        
<script type="text/javascript" src="anytimec.js"></script>

</head>
<body>
<div id="mydatepicker">
</div>

<script type="text/javascript">

var mydatepickerHtml = 'English: <input type="text" id="field1" size="50" value="Sunday, July 30th in the Year 1967 CE" /><br/>Español: <input type="text" id="field2" value="12:34" />';

$(function()
{
$("#mydatepicker").append(mydatepickerHtml);

AnyTime.picker( "field1",       { format: "%W, %M %D in the Year %z %E", firstDOW: 1 } );
  $("#field2").AnyTime_picker( 
      { format: "%H:%i", labelTitle: "Hora",
        labelHour: "Hora", labelMinute: "Minuto" } );

});

</script>
</body>
</html>
Krunal
Please, check my edited question. I tried what you suggested but your example is not good.
ile
@ile - checkout my updated answer.
Krunal
I found where I was mistaking. I also tried what you suggested, but it looks like I have to use id for initialization, not class. AnyTime.picker( "field1", { format: "%W, %M %D in the Year %z %E", firstDOW: 1 } ); - this is good, but $(".date_picker")AnyTime.picker({ format: "%W, %M %D in the Year %z %E", firstDOW: 1 } ); will not work on appended elements.
ile
A: 

$.AnyTime_picker() should work on classes as well as appended elements. Please post the URL here where I can debug the problem, or send me a message via http://www.ama3.com/doorkeeper/ and I will whitelist your email address, so you can email me the relevant HTML/CSS/JS files and I can attempt to reproduce the problem on my computer. Thanks!

Andrew M. Andrews III