Please, does anyone knows why do I need to push twice the submit button so the validation be updated?
Thanks, Miguel On Jun 25, 2:01 pm, shapper <[EMAIL PROTECTED]> wrote: > Hi, > > It worked but now I get a new problem which I also notice before! I > though it was due to this but it seems it is not ... > > The validator only takes effect when I click the submit button twice! > > For example, if i place some text in the first TinyMCE text area and > nothing on the second and click the submit button I get an error > message on both text areas, > If i click it again then the error message of the first text area > disappears. And this happens in all situations. > > Any idea? Is this a Validation Plugin Bug? > > Thanks, > Miguel > > On Jun 25, 12:33 am, "Josh Nathanson" <[EMAIL PROTECTED]> wrote: > > > I think maybe you want element.is("textarea") (no colon) > > > Otherwise that part of the conditional will never fire. > > > -- Josh > > > ----- Original Message ----- > > From: "shapper" <[EMAIL PROTECTED]> > > To: "jQuery (English)" <jquery-en@googlegroups.com> > > Sent: Tuesday, June 24, 2008 4:23 PM > > Subject: [jQuery] Re: [validate] Validation Plugin issue when using TinyMCE > > > You mean the { after the else? Yes, I noticed that before. > > I keep having the same problem. The form is not validated when I use > > errorPlacement. > > > I am using: > > > $("#New").validate({ > > errorClass: "Error", > > errorElement: "label", > > errorPlacement: function(error, element) { > > if (element.is(":textarea")) > > error.insertAfter(element.next()); > > else > > error.insertAfter(element); > > }, > > rules: { > > Answer: {required: true}, > > Question: {required: true} > > }, > > messages: { > > Answer: {required: "Insert an answer"}, > > Question: {required: "Insert a question"} > > } > > }); > > > Any idea? > > > Thanks, > > Miguel > > > On Jun 24, 11:18 pm, "Jörn Zaefferer" <[EMAIL PROTECTED]> > > wrote: > > > There was a syntax error in the errorPlacement, try this: > > > > errorPlacement: function(error, element) { > > > if (element.is(":textarea")) > > > error.insertAfter(element.next()); > > > else > > > error.insertAfter(element); > > > }, > > > > On Tue, Jun 24, 2008 at 11:36 PM, shapper <[EMAIL PROTECTED]> wrote: > > > > > Hello, > > > > > I have been trying to make JQuery Validation with TinyMCE and until > > > > now I wasn't able to do this. I have 2 text areas converted to > > > > TinyMCE. I am using: > > > > > $("#New").validate({ > > > > errorClass: "Error", > > > > errorElement: "label", > > > > errorPlacement: function(error, element) { > > > > if (element.is(":textarea")) > > > > error.insertAfter(element.next()); > > > > else { > > > > error.insertAfter(element); > > > > }, > > > > rules: { > > > > Answer: {required: true}, > > > > Question: {required: true} > > > > }, > > > > messages: { > > > > Answer: {required: "Insert an answer"}, > > > > Question: {required: "Insert a question"} > > > > } > > > > }); > > > > > Using this code does not even validate. The form is submited. If I > > > > remove the errorReplacement part then it works but the error message > > > > is out of place. > > > > > I tried many options but until now I wasn't able to make this work. > > > > > Any idea how to solve this? > > > > > Thanks, > > > > Miguel > > > > > On Jun 24, 3:01 pm, "Jörn Zaefferer" <[EMAIL PROTECTED]> > > > > wrote: > > > >> How about this: > > > > >> errorPlacement: function(error, element) { > > > >> if (element.is(":textarea")) > > > >> error.insertAfter(element.next()); > > > >> else { > > > >> error.insertAfter(element); > > > > >> } > > > > >> Jörn > > > > >> On Tue, Jun 24, 2008 at 2:18 PM, shapper <[EMAIL PROTECTED]> wrote: > > > > >> > Hello, > > > > >> > I checked the markup used by TinyMCE and it is something as follows: > > > > >> > <label for="Question">Question</label> > > > >> > <textarea id="Question" cols="20" rows="10" name="Question" > > > >> > style="display: none;"/> > > > >> > <span id="Question_parent" class="mceEditor BonsAlunosSkin"> > > > >> > <table id="Question_tbl" class="mceLayout" cellspacing="0" > > > >> > cellpadding="0" style="width: 538px; height: 175px;"> > > > >> > <tbody> > > > >> > ..... > > > >> > </tbody> > > > >> > </table> > > > >> > </span> > > > > >> > So the textarea is disabled and replaced by a span and table ... > > > > >> > I then changed my validation code to: > > > > >> > $("#New").validate({ > > > >> > errorClass: "Error", > > > >> > errorElement: "label", > > > >> > rules: {Question: {required: true}}, > > > >> > errorPlacement: function(error, element) { > > > >> > if (element.is(":textarea")) > > > >> > error.appendTo(element.parent().next().next('textarea')); > > > >> > } > > > >> > }); > > > > >> > This is not working. Could you, please, tell me what am I doing > > > >> > wrong? > > > >> > I also tried with table but no success. > > > > >> > On Jun 23, 9:57 am, "Jörn Zaefferer" <[EMAIL PROTECTED]> > > > >> > wrote: > > > >> >> Most likely TinyMCE creates a new element and places it after the > > > >> >> textarea, hiding the former. Use the errorPlacement-option to > > > >> >> customize the placement for that case. > > > > >> >> Jörn > > > > >> >> On Mon, Jun 23, 2008 at 1:54 AM, shapper <[EMAIL PROTECTED]> wrote: > > > > >> >> > Hello, > > > > >> >> > I have the following rules: > > > > >> >> > $("#New").validate({ > > > >> >> > errorClass: "Error", > > > >> >> > errorElement: "label", > > > >> >> > rules: {Answer: {required: true}}, > > > >> >> > }); > > > > >> >> > Applied to text area: > > > > >> >> > <label for="Answer" class="Required">Resposta</label> > > > >> >> > <textarea name="Answer" rows="10" cols="20" id="Answer"></ > > > >> >> > textarea> > > > > >> >> > This works fine. The error labels shows after the TextArea. > > > >> >> > The moment I use TinyMCE (http://tinymce.moxiecode.com/) to make > > > >> >> > the > > > >> >> > Text Area an HTML WYSIWYG editor I get a problem: > > > > >> >> > The error label shows before the text area and after the label! > > > > >> >> > Any idea what might be wrong? How can I solve this? > > > > >> >> > Thanks, > > > >> >> > Miguel