I'm sure this is something simple, but I'm fairly new to programming
and very new to jquery.

I have a table where each cell has a unique id. when the user hovers
over the cell I display some options which loads a form based on what
the user selects...(not important).

Anyway, everything works great the first time a user makes a selection
on a cell. However, once that cell has been .click(ed). they cannot
click it again before clicking another cell first.

I'm thinking maybe there is someway to reset the function, but I'm not
sure about that. Any ideas?

 [code]
// show the form near the cell which was clicked
$(".add, .edit").click(function(event) {
                var id = this.id;
                var posTop = event.pageY-30;
                var posLeft = event.pageX-30;
                        $.ajax({
                                type: "GET",
                                url: "add.php",
                                data: id,
                                success: function(response){
                                        alert('clicked');
                                        $("#addForm").css({ position: 
'absolute', top: posTop, left:
posLeft });
                                        
$("#addForm").fadeIn("slow").html(response);
                                        }
                        });
        });


        // prepare the form when the DOM is ready

            var options = {
        target:        '#addForm',   // target element(s) to be
updated with server response
        success:  showResponse
    };

    // bind to the form's submit event
    $('#addForm').submit(function() {
        // inside event callbacks 'this' is the DOM element so we
first
        // wrap it in a jQuery object and then invoke ajaxSubmit
        $(this).ajaxSubmit(options);

        // !!! Important !!!
        // always return false to prevent standard browser submit and
page navigation
        return false;
    });


// pre-submit callback
        function showRequest(formData, jqForm, options) {
    // formData is an array; here we use $.param to convert it to a
string to display it
    // but the form plugin does this for you automatically when it
submits the data
        var queryString = $.param(formData);

    // jqForm is a jQuery object encapsulating the form element.  To
access the
    // DOM element for the form do this:
    // var formElement = jqForm[0];

          alert('About to submit: \n\n' + queryString);


    // here we could return false to prevent the form from being
submitted;
    // returning anything other than false will allow the form submit
to continue

        }

        // post-submit callback
        function showResponse(options)  {
        // for normal html responses, the first argument to the success
callback
        // is the XMLHttpRequest object's responseText property

            // if the ajaxSubmit method was passed an Options Object with the
dataType
            // property set to 'xml' then the first argument to the success
callback
            // is the XMLHttpRequest object's responseXML property

            // if the ajaxSubmit method was passed an Options Object with the
dataType
            // property set to 'json' then the first argument to the success
callback
            // is the json data object returned by the server


                $.ajax({
                                type: "GET",
                                url: "processes/addNow.php",
                                data: "uid="+uid+"&sid="+sid+,
                                success: function(response2){
                                        $("."+usid+"-"+uid).html(response2);
                                $("#addForm").fadeOut("slow");
                                        }

                        });
        }
[/code]

Reply via email to