Je dois lancer une validation JavaScript personnalisée, puis soumettre mon ASP.NET en utilisant JavaScript.Comment soumettre ASP.NET avec JavaScript après validation personnalisée
Comment soumettre le formulaire en JavaScript?
Je dois lancer une validation JavaScript personnalisée, puis soumettre mon ASP.NET en utilisant JavaScript.Comment soumettre ASP.NET avec JavaScript après validation personnalisée
Comment soumettre le formulaire en JavaScript?
Pour faire une postback via JavaScript, vous pouvez appeler le côté serveur suivant pour créer le code JavaScript pour vous:
string postBackJavascript = Page.GetPostBackEventReference(yourControl);
Cela renverra le code JavaScript __doPostBack
comme une chaîne, et vous aurez besoin lieu sur votre page jointe à quelque chose ou vous pouvez appeler le __doPostBack
directement sur votre propre avec:
__doPostBack(yourControlId,'');
Si vous faites vous-même et ne pas utiliser Page.GetPostBackEventReference
alors assurez-vous d'obtenir le ClientID
pour le contrôle qui a déclenché la validation, comme:
__doPostBack('<%= yourControl.ClientID %>','');
EDIT: Après relisant votre question, vous ne dites pas que vous vouliez déclencher le postback basé sur un contrôle ASP.NET, vous pourriez ne pas être même en utilisant une ASP.NET contrôle donc dans ce cas si vous voulez juste faire une postback de vanille que vous pouvez faire:
document.forms[0].submit();
Si vous souhaitez publier, vous pouvez utiliser __doPostBack()
que ASP.NET a mis dans le <form>
. Jetez un oeil à ce link. Si vous souhaitez soumettre un autre formulaire, appelez le .submit()
sur l'élément de formulaire.
Il devrait être aussi simple que
document.forms[0].submit();
Fournir d, vous avez seulement un formulaire sur la page, ou vous devez utiliser le nom du formulaire au lieu de l'index 0.
bien puisque vous avez demandé .. je suis en train de soumettre en utilisant un bouton ASP.Net. maintenant je ne peux pas obtenir le bouton pour ne pas soumettre. J'ai le OnClientClick = "validate(); return false;" mais ne semble pas fonctionner. Des idées?? – bill
@bill cela devrait fonctionner ... essayez de supprimer le 'validate()' et voyez si juste 'return false;' fonctionne. Mon intuition est que vous faites quelque chose dans le 'validate()' qui cause ce problème parce qu'il semble correct. Peut-être commencer une autre question et inclure votre code 'validate()'. – Kelsey
Vous pouvez avoir des problèmes pour annuler le comportement du bouton lorsque les événements sont empilés. Ainsi, le postback qui était à l'origine se déclenche avant votre javascript. Vous devez donc d'abord effacer l'événement original avant de mettre le vôtre. Sinon, le bouton sera toujours soumis. – Simon