Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

jQuery Validation Plugin and Tooltipster Plugin error

I'm trying to customize the error messages that user's get by using the Tooltipster plugin and I run into the following problem:

You called Tooltipster's "content" method on an uninitialized element

My HTML code:

<form>
  <input id="one" type="number" name="one" />
  <input id="two" type="number" name="two" />
  <button id="button" type="submit">Submit</button>
</form>

Javascript:

$(document).ready(function () {

            $('form').validate({ // initialize the plugin
                rules: {
                    one: {
                        required: true,
                        min: 1,
                        max: 100
                    },
                    two: {
                        required: true,
                        min: 50,
                        max: 80
                    }
                },
                submitHandler: function (form) {
                    doTest();
                    return false;
                },
                errorPlacement: function (error, element) {
                    var lastError = $(element).data('lastError'),
                        newError = $(error).text();

                    $(element).data('lastError', newError);

                    if (newError !== '' && newError !== lastError) {
                        $(element).tooltipster('content', newError);
                        $(element).tooltipster('show');
                    }
                },
                success: function (label, element) {
                    $(element).tooltipster('hide');
                }
            });

        });

What might be the problem?

like image 341
kalpetros Avatar asked Mar 13 '14 20:03

kalpetros


1 Answers

Console error:

You called Tooltipster's "content" method on an uninitialized element

The problem is that you have not properly initialized the Tooltipster plugin on your input elements.

// initialize tooltipster on form input elements
$('form input').tooltipster({  // <-  USE THE PROPER SELECTOR FOR YOUR INPUTs
    trigger: 'custom', // default is 'hover' which is no good here
    onlyOne: false,    // allow multiple tips to be open at a time
    position: 'right'  // display the tips to the right of the element
});

See: https://stackoverflow.com/a/14741689/594235

like image 63
Sparky Avatar answered Sep 20 '22 03:09

Sparky