Comment dois-je soumettre un formulaire avec jqueryui bouton de boîte de dialogue,
Je veux envoyer un formulaire à l'aide de jqueryui bouton. J'ai eu un peu de code mais il ne fonctionne pas. Voici le code:
<script type="text/javascript">
function findUrls()
{
var text = document.getElementById("text").value;
var source = (text || '').toString();
var urlArray = [];
var url;
var matchArray;
//Regular expression to find FTP, HTTP(S) and email URLs.
var regexToken = /\b(http|https)?(:\/\/)?(\S*)\.(\w{2,4})\b/ig;
//Iterate through any URLs in the text.
if( (regexToken.exec( source )) !== null )
{
show_box();//this will show jquery dialog..
return false;
}
}
</script>
<div id="dialog" title="Dialog Title">
<p>Dialog box text.....Dialog box text....Dialog box text</p>
<button id="formSubmit">Click me</button>
</div>
<form name="myForm" id="myForm" action="http://www.bing.com" method="post" onsubmit="return findUrls();">
<textarea id="text"></textarea>
<input type="submit" name="submit" value="send" />
</form>
<script type="text/javascript">
function show_box(){
$(document).ready(function(){
$( "#dialog" ).dialog({
autoOpen: false,
width: 400,
buttons: [
{
text: "Yes",
click: function() {
submit_form();
}
},
{
text: "No",
click: function() {
$( this ).dialog( "close" );
}
},
{
text: "Cancel",
click: function() {
$( this ).dialog( "close" );
}
}
]
});
$( "#dialog" ).dialog( "open" );
});
}
function submi_form(){
var myForm = document.forms['myForm'];
var formSubmit = document.getElementById('formSubmit');
formSubmit.onclick = function(){
myForm.submit();
}
}
</script>
Quand une personne met un lien dans la zone de texte et de soumettre le formulaire, jquery boîte de dialogue apparaît avec trois boutons, je veux que quand un un seul clic sur le bouton "Oui" de la boîte de dialogue, le formulaire de soumettre automatiquement. Tout fonctionne très bien. Mais Quand je clique sur le bouton oui, il ne fonctionne pas.
Tout d'abord, vous êtes à l'appel de la fonction submit_form (), mais vous avez défini la fonction submi_form(). Et si vous êtes à l'aide de jQuery, pourquoi êtes-vous à l'aide de
si c'est à propos de jQuery UI?
Ce n'est pas de travail
Maintenant, j'ai utilisé $('#myForm').submit (); "Oui" même, Mais pas les œuvres
Tous les deux travaillent, mais submit_form() ne fonctionne pas. Mais je l'ai changé à $('#myForm').submit();. Il est également ne fonctionne pas.
var formSubmit = document.getElementById('formSubmit');
? Pourquoi ne pas utiliser $('#formSubmit')
?si c'est à propos de jQuery UI?
Ce n'est pas de travail
findUrls()
ou show_box()
fonction??Maintenant, j'ai utilisé $('#myForm').submit (); "Oui" même, Mais pas les œuvres
Tous les deux travaillent, mais submit_form() ne fonctionne pas. Mais je l'ai changé à $('#myForm').submit();. Il est également ne fonctionne pas.
OriginalL'auteur Gopa Soft | 2012-12-04
Vous devez vous connecter pour publier un commentaire.
Votre submit_form fonction n'est pas en train d'essayer de soumettre le formulaire. Il est actuellement ajout d'un événement de clic sur le bouton "Click Me" qui, si enfoncée, vous pouvez alors soumettre votre formulaire.
Si vous souhaitez en cliquant sur le bouton "Oui" de votre boîte de dialogue de soumettre le formulaire, essayez ceci:
Assurez-vous également que le nom de votre submi_form méthode est juste une faute de frappe ici plutôt que dans votre code en direct...il vous manque un "t".
Essayez ceci: Supprimer l'événement onsubmit d'un formulaire. Changer votre bouton "Envoyer" pour une entrée de juste type="button". Ajouter un événement onclick sur le bouton qui va appeler findUrls().
Pas de travail....
Le dernier problème est lié à ceci: stackoverflow.com/questions/11979852/... Tout ce que vous devez faire maintenant est de déplacer le bouton à l'extérieur de votre forme et de la forme soumet de façon appropriée. Vous pouvez également envisager de mettre un nom sur votre textarea. Voici un exemple: jsfiddle.net/SzMCF
OriginalL'auteur purgatory101
bon, très tout d'abord le code est très embrouillé et très mal organisé, désolé de dire cela. Quelques conseils pour l'améliorer:
1: garder javascirpt séparées, js fichiers, essayez d'éviter de code intégré autant que possible. Mais pourtant, cela ne signifie pas ne pas utiliser l'intègre à tous. dans ce cas il est préférable de le garder plus organisé.
2: assurez-vous que vous appelez la charge de l'événement dans le code où il est nécessaire, dans votre cas, le document de prêt a été utilisé à l'intérieur de show_box() ce qui est totalement inutile.
3: fonction submi_form() n'est pas appelée à partir de n'importe où, donc, à ce stade, vous pouvez mieux utiliser le document prêt à traiter cliquez sur l'événement
4: findUrls(), désolé, n'a pas été en mesure d'obtenir ce que vous voulez accomplir dans cette partie, il suffit donc de le contourner. Assurez-vous de garder les choses simples et le bonheur viendra)
A essayé de corriger le code en gardant votre style aussi proche que possible, nous voici donc http://jsbin.com/idetub/1/edit
et javascript pour votre considération
UPD: et oui, on dirait que vous obtenez reccursive logique ici, qui désactivée pour faire de soumission du formulaire.
OriginalL'auteur dmi3y
Essayez ceci:
Aussi supprimer le
onsubmit="return findUrls();"
de la forme et ajouter lefindUrls()
code à l'intérieur de la$("#myForm").submit()
méthode ci-dessus. ViolonOriginalL'auteur palaѕн