![]() | |
![]() |
| | Thread Tools | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
|
Hello, I'm using Javascript in ASP.NET application to check whether at least one checkbox in datagrid has been checked. If validation fails, the user gets a warning. If he clicks OK, the form is submitted, if Cancel - nothing should happen. The ASP.NET code looks like this: btnSubmit.Attributes.Add("onClick", "if (!(" & sClientSideValidate.ToString & "))" _ & "{ confirm('You have not selected any DRs. Are you sure you want to submit change?');return false}") All validation is in sClientSideValidate. The problem is with "return false". ASP.NET doesn't like the word "return". If I use it - all my ASP.NET validation controls don't work. For instance, if I use "return confirm" - I have a problem, if I use just "confirm" - I have no problem. Same with "return false". But in this case I don't know what could I use instead of "return false". I have to use something to cancel form submission if the user clicks "Cancel". I'm not an expert in Javascript, so I hope someone could tell me - what could I use instead of "return false" to get the same results? I would appreciate your help. Thank you, -- Peter Afonin |
#3
| |||
| |||
|
|
On Mar 19, 9:05 pm, "PeterAfonin" <pafo... (AT) hotmail (DOT) com> wrote: Hello, I'm using Javascript in ASP.NET application to check whether at least one checkbox in datagrid has been checked. If validation fails, the user gets a warning. If he clicks OK, the form is submitted, if Cancel - nothing should happen. The ASP.NET code looks like this: btnSubmit.Attributes.Add("onClick", "if (!(" & sClientSideValidate.ToString & "))" _ & "{ confirm('You have not selected any DRs. Are you sure you want to submit change?');return false}") All validation is in sClientSideValidate. The problem is with "return false". ASP.NET doesn't like the word "return". If I use it - all my ASP.NET validation controls don't work. For instance, if I use "return confirm" - I have a problem, if I use just "confirm" - I have no problem. Same with "return false". But in this case I don't know what could I use instead of "return false". I have to use something to cancel form submission if the user clicks "Cancel". I'm not an expert in Javascript, so I hope someone could tell me - what could I use instead of "return false" to get the same results? I would appreciate your help. Thank you, -- PeterAfonin First of all your closing brace is not in the proper place, it should be before the return statement. But you can do even better than that. The confirm box returns the users selection so you can check for true or false and return it: I have no experience with ASP (I'm a JSP developer) but it should look something like this: btnSubmit.Attributes.Add("onclick", "function() = { if (! " & sClientSideValidate.ToString & ") { return confirm('You have not selected any DRs. Are you sure you want to submit change?'); } }"); HTH.- Hide quoted text - - Show quoted text - |
#4
| |||
| |||
|
|
On Mar 19, 9:05 pm, "PeterAfonin" <pafo... (AT) hotmail (DOT) com> wrote: Hello, I'm using Javascript in ASP.NET application to check whether at least one checkbox in datagrid has been checked. If validation fails, the user gets a warning. If he clicks OK, the form is submitted, if Cancel - nothing should happen. The ASP.NET code looks like this: btnSubmit.Attributes.Add("onClick", "if (!(" & sClientSideValidate.ToString & "))" _ & "{ confirm('You have not selected any DRs. Are you sure you want to submit change?');return false}") All validation is in sClientSideValidate. The problem is with "return false". ASP.NET doesn't like the word "return". If I use it - all my ASP.NET validation controls don't work. For instance, if I use "return confirm" - I have a problem, if I use just "confirm" - I have no problem. Same with "return false". But in this case I don't know what could I use instead of "return false". I have to use something to cancel form submission if the user clicks "Cancel". I'm not an expert in Javascript, so I hope someone could tell me - what could I use instead of "return false" to get the same results? I would appreciate your help. Thank you, -- PeterAfonin First of all your closing brace is not in the proper place, it should be before the return statement. But you can do even better than that. The confirm box returns the users selection so you can check for true or false and return it: I have no experience with ASP (I'm a JSP developer) but it should look something like this: btnSubmit.Attributes.Add("onclick", "function() = { if (! " & sClientSideValidate.ToString & ") { return confirm('You have not selected any DRs. Are you sure you want to submit change?'); } }"); HTH.- Hide quoted text - - Show quoted text - |
#5
| |||
| |||
|
|
And one more thing I'd like to mention. I'm afraid this code will also never work for me due to the same statement "return". This statement breaks all further code execution, that's why my other validation controls don't work. Is there a way to avoid it? snip |
#6
| |||
| |||
|
|
Peterwrote: And one more thing I'd like to mention. I'm afraid this code will also never work for me due to the same statement "return". This statement breaks all further code execution, that's why my other validation controls don't work. Is there a way to avoid it? snip It is hard to believe that ASP.NET could really be as bad as you have just described. However, as you are constructing your javascript code from string values in another leagues couldn't you disguise the "return" keyword? In javascript we could do:- "ret"+"urn false;" - or:- "\u0072eturn false;" //replacing the r with its unicode escape sequnce. - for example, thought there would be no need in javascript. Richard. |
#7
| |||
| |||
|
|
There is nothing bad about ASP.NET. snip |
#8
| |||
| |||
|
|
"Peter" <gudzonhost (AT) gmail (DOT) com> wrote: There is nothing bad about ASP.NET. snip Then why did you write "ASP.NET doesn't like the word "return"."? And why are you showing us server code if your problem is only with the client-side code? Richard. |
#9
| |||||||
| |||||||
|
|
I guess the word "doesn't like" wasn't the right one. |
|
In this particular case the javascript can be added only using the server-side code, because I have to itirate through the hundreds of rows of the datagrid. Well, maybe it's possible to use pure javascript without server-side code, but I don't know how. |
|
That's why I was showing how I added this code - using the server-side scripts. |
|
But the output in the HTML source is this (example): input type="submit" name="btnSubmit" value="Submit" onclick="function() = { if (! dgReport__ctl2_chkConf.checked || ^^^^^^^^^^^^^^ |
|
dgReport__ctl3_chkConf.checked ||dgReport__ctl4_chkConf.checked || ^^^^^^^^^^^^^^^^^^^^^^^ |
|
dgReport__ctl5_chkConf.checked ||dgReport__ctl6_chkConf.checked) { return confirm('You have not selected any DRs. Are you sure you want to submit change?'); } }if (typeof(Page_ClientValidate) == 'function') Page_ClientValidate(); " language="javascript" id="btnSubmit" ^^^^^^^^^^^^^^^^^^^^ |
|
class="button" / snip |
![]() |
| Thread Tools | |
| Display Modes | |
| |