[jQuery] Re: Only one of two fields is required. How to implement this logic in Jquery form validation?

2009-10-12 Thread Phper


I am not familiar with the syntax of Jquery plugin.

On Oct 12, 2:19 pm, Don Dunbar salemd1s...@gmail.com wrote:
 Hi , I double checked on javascript's XOR operator and it only works with
 bitwise: so you will have to write your own XOR . This isn't hard :   [code]
 if (!foo != !bar)  [\code] should work for all elements.
    or this
    [code]if( ( foo  !bar ) || ( !foo  bar ) )[\code]

 For the validator method I haven't actually tried to run this but you can
 try this:[code]
     $.validator.addMethod(

     onlyCheckOne,
     function(value, elements) {
         // but put whatever you're using to see if either is checked
 in the next line
         return  this.optional(value) ||  elements[o]:checked XOR
 elements[1]:checked;
     },
     Please check either participations or days, but not both
 )[/code] note change XOR to whatever method you decide to use.

 Then add the check to your rules.
 DED

 On Mon, Oct 12, 2009 at 12:36 AM, Phper hi.steven...@gmail.com wrote:

  script type=text/javascript src=http://code.jquery.com/jquery-
  latest.js/script
  script type=text/javascript src=http://dev.jquery.com/view/trunk/
  plugins/validate/jquery.validate.js/script

  script type=text/javascript
  !--
  $(document).ready(function() {
       $(#form1).validate({
         rules: {
            title: {
                 required: true,
                  minlength:40
         } ,
         content: {
                 required: true,
                  minlength:100,
                  maxlength:600
         },
          evaluation: {
                 required: true,
                  minlength:50,
                  maxlength:300
         },
         price: {
                 required: true,
                 digits:true

         },
         multi:{
                 required:true
         }
              },
         messages: {

         }
               });
             });

  --
  /script

  As you can see from the code above, title, content, evaluation,
  prices and multi are required. All of them are required. But there
  are additional two fields, which are participations and days. Only
  one of them is required. Either participations or days is
  required. How to write this code?

  On Oct 12, 10:17 am, Phper hi.steven...@gmail.com wrote:
   A good clue. But I still don't know where to write the if statement.
   It would be good if you can give me an example.

   On Oct 11, 10:57 pm, Don Dunbar salemd1s...@gmail.com wrote:

Hi, if you are using the validation plugin, I believe it has a function
addMethod that allows you to write your own method for the
  validation. It
requires a name (javascript identifier), a method to check input
  against (
in your case A and B would be checked for completion) and a message to
display when there is an error (i.e. neither A nor B is filled out, or
  both
are). You can get the details for using the addMethod function at the
jQuery Docs page.http://docs.jquery.com/Plugins/Validation
The page lists demos and the function you need is toward the bottom of
  the
page.

The logic is fairly straight forward :  when the form is being filled
  out
listen for when A and B have focus, remember if either is checked or
  ignored
and check to make sure both are not simultaneously filled out. Check
  this on
submit as well.

Good luck,
DED

On Sun, Oct 11, 2009 at 7:42 AM, Phper hi.steven...@gmail.com wrote:

 How can I write the code in the context of Jquery validate function?

 On Oct 11, 12:43 pm, Don Dunbar salemd1s...@gmail.com wrote:
  Hi, javascript has an 'xor' operator. It works just like 'or' in an
  'if'
  statement except in 'xor' only one side can be true. In a normal
  'or'
  statement either side can be true or both can. So you probably want
  to do
  something like: if ( A XOR B) { } .  Then only one can be true to
 continue
  if both are true the statement returns 'false'.Hope this helps.
  DED

  On Sat, Oct 10, 2009 at 10:37 PM, Phper hi.steven...@gmail.com
  wrote:

   There are two input fields in a form, but only one of them is
   required, they are not required at the same time. Either A or B
  is
   required. ( A is required  OR B is required). In other words, a
  user
   can input data to field A, or he can input data to filed B, but
  he can
   not input data to Both A and B at the same time.

   How to implement this constraint in Jquery form validation?


[jQuery] Re: Only one of two fields is required. How to implement this logic in Jquery form validation?

2009-10-12 Thread Phper

No, I can not use radio. At the help of a veteran programmer, I was
able to write the following code and it works.

script type=text/javascript src=http://code.jquery.com/jquery-
latest.js/script
script type=text/javascript src=http://dev.jquery.com/view/trunk/
plugins/validate/jquery.validate.js/script

script type=text/javascript
!--
$(document).ready(function() {
  $(#form1).validate({
rules: {
participations: {
required: function() {
return $('#days').val() == '' ? true : false;
}
},
days: {
required: function() {
return $('#participations').val() =='' ? true: false;
}
},
   title: {
required: true,
 minlength:40
} ,
content: {
required: true,
 minlength:100,
 maxlength:600
},
 evaluation: {
required: true,
 minlength:50,
 maxlength:300
},
price: {
required: true,
digits:true

},
multi:{
required:true
}
 },
messages: {

}
  });
});

--
/script


There is a minor problem.
I wanna change the default position of an alert message which is This
field is required. by default. How to do it?

On Oct 12, 2:54 pm, Don Dunbar salemd1s...@gmail.com wrote:
 I thought of a much simpler solution. If possible could you use radio
 buttons for those two choices in your HTML? In a radio button group
 selecting one automatically deselects other buttons in the group. Then you
 could just use one of the built in validation checks, as you already have
 done, to make sure one is checked.DED

 On Mon, Oct 12, 2009 at 1:43 AM, Phper hi.steven...@gmail.com wrote:

  I am not familiar with the syntax of Jquery plugin.

  On Oct 12, 2:19 pm, Don Dunbar salemd1s...@gmail.com wrote:
   Hi , I double checked on javascript's XOR operator and it only works with
   bitwise: so you will have to write your own XOR . This isn't hard :
  [code]
   if (!foo != !bar)  [\code] should work for all elements.
      or this
      [code]if( ( foo  !bar ) || ( !foo  bar ) )[\code]

   For the validator method I haven't actually tried to run this but you can
   try this:[code]
       $.validator.addMethod(

       onlyCheckOne,
       function(value, elements) {
           // but put whatever you're using to see if either is checked
   in the next line
           return  this.optional(value) ||  elements[o]:checked XOR
   elements[1]:checked;
       },
       Please check either participations or days, but not both
   )[/code] note change XOR to whatever method you decide to use.

   Then add the check to your rules.
   DED

   On Mon, Oct 12, 2009 at 12:36 AM, Phper hi.steven...@gmail.com wrote:

script type=text/javascript src=http://code.jquery.com/jquery-
latest.js/script
script type=text/javascript src=http://dev.jquery.com/view/trunk/
plugins/validate/jquery.validate.js/script

script type=text/javascript
!--
$(document).ready(function() {
     $(#form1).validate({
       rules: {
          title: {
               required: true,
                minlength:40
       } ,
       content: {
               required: true,
                minlength:100,
                maxlength:600
       },
        evaluation: {
               required: true,
                minlength:50,
                maxlength:300
       },
       price: {
               required: true,
               digits:true

       },
       multi:{
               required:true
       }
            },
       messages: {

       }
             });
           });

--
/script

As you can see from the code above, title, content, evaluation,
prices and multi are required. All of them are required. But there
are additional two fields, which are participations and days. Only
one of them is required. Either participations or days is
required. How to write this code?

On Oct 12, 10:17 am, Phper hi.steven...@gmail.com wrote:
 A good clue. But I still don't know where to write the if
  statement.
 It would be good if you can give me an example.

 On Oct 11, 10:57 pm, Don Dunbar salemd1s...@gmail.com wrote:

  Hi, if you are using the validation plugin, I believe it has a
  function
  addMethod that allows you to write your own method for the
validation. It
  requires a name (javascript identifier), a method to check input
against (
  in your case A and B would be checked for completion) and a message
  to
  display when there is an error (i.e. neither A nor B is filled out,
  or
both
  are). You can get the details for using the addMethod function at
  the
  jQuery Docs

[jQuery] Re: Only one of two fields is required. How to implement this logic in Jquery form validation?

2009-10-12 Thread Phper

How to change the default position of an error message in Jquey form
validation plugin?

On Oct 12, 4:33 pm, Gordon grj.mc...@googlemail.com wrote:
 If you're using the Metadata plugin and inline rules:

 input type=text id=a class={validate:{required:'#b:blank'}} /
 input type=text id=b class={validate:{required:'#a:blank'}} /

 I've not actually tested it but it should work.

 On Oct 11, 4:37 am, Phper hi.steven...@gmail.com wrote:

  There are two input fields in a form, but only one of them is
  required, they are not required at the same time. Either A or B is
  required. ( A is required  OR B is required). In other words, a user
  can input data to field A, or he can input data to filed B, but he can
  not input data to Both A and B at the same time.

  How to implement this constraint in Jquery form validation?


[jQuery] Re: Only one of two fields is required. How to implement this logic in Jquery form validation?

2009-10-12 Thread Phper

Also, how to prevent a user filling out both fields?

On Oct 12, 4:48 pm, Phper hi.steven...@gmail.com wrote:
 How to change the default position of an error message in Jquey form
 validation plugin?

 On Oct 12, 4:33 pm, Gordon grj.mc...@googlemail.com wrote:

  If you're using the Metadata plugin and inline rules:

  input type=text id=a class={validate:{required:'#b:blank'}} /
  input type=text id=b class={validate:{required:'#a:blank'}} /

  I've not actually tested it but it should work.

  On Oct 11, 4:37 am, Phper hi.steven...@gmail.com wrote:

   There are two input fields in a form, but only one of them is
   required, they are not required at the same time. Either A or B is
   required. ( A is required  OR B is required). In other words, a user
   can input data to field A, or he can input data to filed B, but he can
   not input data to Both A and B at the same time.

   How to implement this constraint in Jquery form validation?


[jQuery] Re: Only one of two fields is required. How to implement this logic in Jquery form validation?

2009-10-12 Thread Phper

Also, how to prevent a user filling out both fields?

On Oct 12, 4:48 pm, Phper hi.steven...@gmail.com wrote:
 How to change the default position of an error message in Jquey form
 validation plugin?

 On Oct 12, 4:33 pm, Gordon grj.mc...@googlemail.com wrote:

  If you're using the Metadata plugin and inline rules:

  input type=text id=a class={validate:{required:'#b:blank'}} /
  input type=text id=b class={validate:{required:'#a:blank'}} /

  I've not actually tested it but it should work.

  On Oct 11, 4:37 am, Phper hi.steven...@gmail.com wrote:

   There are two input fields in a form, but only one of them is
   required, they are not required at the same time. Either A or B is
   required. ( A is required  OR B is required). In other words, a user
   can input data to field A, or he can input data to filed B, but he can
   not input data to Both A and B at the same time.

   How to implement this constraint in Jquery form validation?


[jQuery] Re: Only one of two fields is required. How to implement this logic in Jquery form validation?

2009-10-11 Thread Phper

How can I write the code in the context of Jquery validate function?

On Oct 11, 12:43 pm, Don Dunbar salemd1s...@gmail.com wrote:
 Hi, javascript has an 'xor' operator. It works just like 'or' in an 'if'
 statement except in 'xor' only one side can be true. In a normal 'or'
 statement either side can be true or both can. So you probably want to do
 something like: if ( A XOR B) { } .  Then only one can be true to continue
 if both are true the statement returns 'false'.Hope this helps.
 DED

 On Sat, Oct 10, 2009 at 10:37 PM, Phper hi.steven...@gmail.com wrote:

  There are two input fields in a form, but only one of them is
  required, they are not required at the same time. Either A or B is
  required. ( A is required  OR B is required). In other words, a user
  can input data to field A, or he can input data to filed B, but he can
  not input data to Both A and B at the same time.

  How to implement this constraint in Jquery form validation?


[jQuery] Re: Only one of two fields is required. How to implement this logic in Jquery form validation?

2009-10-11 Thread Phper

A good clue. But I still don't know where to write the if statement.
It would be good if you can give me an example.

On Oct 11, 10:57 pm, Don Dunbar salemd1s...@gmail.com wrote:
 Hi, if you are using the validation plugin, I believe it has a function
 addMethod that allows you to write your own method for the validation. It
 requires a name (javascript identifier), a method to check input against (
 in your case A and B would be checked for completion) and a message to
 display when there is an error (i.e. neither A nor B is filled out, or both
 are). You can get the details for using the addMethod function at the
 jQuery Docs page.http://docs.jquery.com/Plugins/Validation
 The page lists demos and the function you need is toward the bottom of the
 page.

 The logic is fairly straight forward :  when the form is being filled out
 listen for when A and B have focus, remember if either is checked or ignored
 and check to make sure both are not simultaneously filled out. Check this on
 submit as well.

 Good luck,
 DED

 On Sun, Oct 11, 2009 at 7:42 AM, Phper hi.steven...@gmail.com wrote:

  How can I write the code in the context of Jquery validate function?

  On Oct 11, 12:43 pm, Don Dunbar salemd1s...@gmail.com wrote:
   Hi, javascript has an 'xor' operator. It works just like 'or' in an 'if'
   statement except in 'xor' only one side can be true. In a normal 'or'
   statement either side can be true or both can. So you probably want to do
   something like: if ( A XOR B) { } .  Then only one can be true to
  continue
   if both are true the statement returns 'false'.Hope this helps.
   DED

   On Sat, Oct 10, 2009 at 10:37 PM, Phper hi.steven...@gmail.com wrote:

There are two input fields in a form, but only one of them is
required, they are not required at the same time. Either A or B is
required. ( A is required  OR B is required). In other words, a user
can input data to field A, or he can input data to filed B, but he can
not input data to Both A and B at the same time.

How to implement this constraint in Jquery form validation?


[jQuery] Re: Only one of two fields is required. How to implement this logic in Jquery form validation?

2009-10-11 Thread Phper

script type=text/javascript src=http://code.jquery.com/jquery-
latest.js/script
script type=text/javascript src=http://dev.jquery.com/view/trunk/
plugins/validate/jquery.validate.js/script

script type=text/javascript
!--
$(document).ready(function() {
  $(#form1).validate({
rules: {
   title: {
required: true,
 minlength:40
} ,
content: {
required: true,
 minlength:100,
 maxlength:600
},
 evaluation: {
required: true,
 minlength:50,
 maxlength:300
},
price: {
required: true,
digits:true

},
multi:{
required:true
}
 },
messages: {

}
  });
});

--
/script

As you can see from the code above, title, content, evaluation,
prices and multi are required. All of them are required. But there
are additional two fields, which are participations and days. Only
one of them is required. Either participations or days is
required. How to write this code?

On Oct 12, 10:17 am, Phper hi.steven...@gmail.com wrote:
 A good clue. But I still don't know where to write the if statement.
 It would be good if you can give me an example.

 On Oct 11, 10:57 pm, Don Dunbar salemd1s...@gmail.com wrote:

  Hi, if you are using the validation plugin, I believe it has a function
  addMethod that allows you to write your own method for the validation. It
  requires a name (javascript identifier), a method to check input against (
  in your case A and B would be checked for completion) and a message to
  display when there is an error (i.e. neither A nor B is filled out, or both
  are). You can get the details for using the addMethod function at the
  jQuery Docs page.http://docs.jquery.com/Plugins/Validation
  The page lists demos and the function you need is toward the bottom of the
  page.

  The logic is fairly straight forward :  when the form is being filled out
  listen for when A and B have focus, remember if either is checked or ignored
  and check to make sure both are not simultaneously filled out. Check this on
  submit as well.

  Good luck,
  DED

  On Sun, Oct 11, 2009 at 7:42 AM, Phper hi.steven...@gmail.com wrote:

   How can I write the code in the context of Jquery validate function?

   On Oct 11, 12:43 pm, Don Dunbar salemd1s...@gmail.com wrote:
Hi, javascript has an 'xor' operator. It works just like 'or' in an 'if'
statement except in 'xor' only one side can be true. In a normal 'or'
statement either side can be true or both can. So you probably want to 
do
something like: if ( A XOR B) { } .  Then only one can be true to
   continue
if both are true the statement returns 'false'.Hope this helps.
DED

On Sat, Oct 10, 2009 at 10:37 PM, Phper hi.steven...@gmail.com wrote:

 There are two input fields in a form, but only one of them is
 required, they are not required at the same time. Either A or B is
 required. ( A is required  OR B is required). In other words, a user
 can input data to field A, or he can input data to filed B, but he can
 not input data to Both A and B at the same time.

 How to implement this constraint in Jquery form validation?


[jQuery] Why doesn't the following code work?

2009-10-10 Thread Phper

$(document).ready(function() {
  $(#form1).validate({
rules: {
  name: required,// simple rule, converted to
{required:true}
title,content, evaluation: {
required: true
}
 },
messages: {
  comment: Please enter a comment.
}
  });
});


[jQuery] Only one of two fields is required. How to implement this logic in Jquery form validation?

2009-10-10 Thread Phper

There are two input fields in a form, but only one of them is
required, they are not required at the same time. Either A or B is
required. ( A is required  OR B is required). In other words, a user
can input data to field A, or he can input data to filed B, but he can
not input data to Both A and B at the same time.

How to implement this constraint in Jquery form validation?