tags:

views:

99

answers:

4

Is there a way to create a form in pop-up window on click of a button using jquery? Form will have few input fields and 'Save' & 'Cancel' buttons. So on clicking 'Save', the information in form will be saved in database and will be back to original screen. I would like to have a fade-in pop up window.

A: 

Have a look at the the jQuery UI Dialog. It does exactly what you want, and can be configured to add animations such as fade-in.

casablanca
+1  A: 

Use this code

HTML

<div id="divdeps" style="display:none" title=""></div>

Jquery on DOM ready

$("#divdeps").dialog({
    autoOpen: false,
    show: 'slide',
    resizable: false,
    position: 'center',
    stack: true,
    height: 'auto',
    width: 'auto',
    modal: true
});

This code will initialize a Dialog and put it in state ready to be open and successively closed. If you want to open the dialog when the page loads then add this line of code just after the code you've already added in document ready:

$("#divdeps").dialog('open');

If instead you want to open the Dialog following a click event add the same code on the click event of the element that should fire the opening.

Add your form inside the myDialog DIV. If you need more help regarding the form submission just give us more details...

Lorenzo
This is my code for jquery : $(document).ready(function(){$('#divdeps').dialog({autoOpen:false,show:'slide',resizeable:true,position:'center',modal:true});}); ...it is not working.
yogsma
@yogsma: please have a look to my edit at the end of my answer. Also, please there's a misspelling in your code `resizeable` should be `resizable`. Hope it helps!
Lorenzo
@Lorenzo - I have tried everything, it's not working.
yogsma
@yogsma: Here is a working sample exactly as in the answer that demonstrates that works. If it's not working maybe something else is breaking in your code. Please post more of your code for more help. `http://jsbin.com/ugetu3`
Lorenzo
+1  A: 

Find JQuery UI dialog.

Create a div with your form in it:

<div id=form>
 your form here
</div>

Then call a dialog instance (probaby link this is some sort of click handler to trigger form)

                       $('#form').dialog({
                            modal: true,
                            buttons:
                          { "Cancel": function() {
                              $(this).dialog("close")
                          },
                              "Submit": function() {
                               //put code here for form submission
                           }
                       });
cinqoTimo
This code would work only once. If you close the dialog you'll never be able to reopen it... ;) please look at `http://blog.nemikor.com/2009/04/08/basic-usage-of-the-jquery-ui-dialog/`
Lorenzo