pouvez-vous envoyer un formulaire à l'intérieur d'une boîte de dialogue modale jquery
J'ai un formulaire à l'intérieur d'un jquery ui boîte de dialogue modale, quand je clique sur le bouton envoyer, rien ne se passe. Est-il un moyen d'envoyer un formulaire à l'intérieur d'une boîte de dialogue modale jquery sans avoir à coder les boutons dans le javascript?
Voici mon extrait de code;
<script>
//increase the default animation speed to exaggerate the effect
$(function() {
$( "#dialog" ).dialog({
autoOpen: false,
draggable: false,
resizable: false,
modal: true,
});
$( "#opener" ).click(function() {
$( "#dialog" ).dialog( "open" );
return false;
});
});
function SetValues()
{
var s = 'X=' + window.event.clientX + ' Y=' + window.event.clientY ;
document.getElementById('divCoord').innerText = s;
}
</script>
<div id="dialog" title="new task">
<form method="post" action="/projects/{{ project.slug }}/">
<div class="form-row">
<label class="required" for="title">task type</label>
<select name="type">
{% for TaskType in project.tasktype_set.all %}
<option value="{{ TaskType.name }}">{{ TaskType.name }}</option>
{% endfor %}
</select>
</div>
<div id="buttons">
<input type="submit" value="create"/>
</div>
</form>
</div>
<button id="opener">new task</button>
si je supprime "modal: true," faire de la boîte de dialogue non modale, il va soumettre.
connexes stackoverflow.com/questions/4743751/...
Haim, j'ai vu ce post - situation légèrement différente car dans l'URL fournie jquery dialogue est tout simplement confirmant l'envoi de leur action, alors que mon formulaire est la partie de la boîte de dialogue modale. J'ai aussi essayé de mise en œuvre de cette, mais sans succès (il n'est pas nécessaire de soumettre mon formulaire).\
Haim, j'ai vu ce post - situation légèrement différente car dans l'URL fournie jquery dialogue est tout simplement confirmant l'envoi de leur action, alors que mon formulaire est la partie de la boîte de dialogue modale. J'ai aussi essayé de mise en œuvre de cette, mais sans succès (il n'est pas nécessaire de soumettre mon formulaire).\
OriginalL'auteur Jamie | 2011-04-03
Vous devez vous connecter pour publier un commentaire.
vous pouvez utiliser le $.post() et $.ajax() dans votre boîte de dialogue par exemple:
il suffit de donner votre sélectionnez une id à la balise ...... rend plus facile à tirer de la valeur. aussi se débarrasser de la touche d'entrée, puisque vous avez maintenant le bouton enregistrer de la boîte de dialogue.
Utilisation
window.location=<YOUR_NEW_LOCATION
dans la réussite de la fonction.Kamyar vous sont corrects, Jaime; remplacer le "alert(data);" avec Kamyar suggéré par le code.
OriginalL'auteur z.eljayyo
Vous devez déplacer la boîte de dialogue de retour dans votre formulaire. Le faire après la création de la boîte de dialogue. comme:
Mise à JOUR:
Pourquoi votre formulaire inclus dans la boîte de dialogue vous? Avez-vous des deux formes? Essayez de déplacer la forme du récipient. Ci-dessous le code complet qui je pense devrait fonctionner:
$( "#opener" ).click(function() {
$( "#dialog" ).dialog( "open" );
$("#dialog").parent().appendTo($("form:first"));
return false;
});
pas de chance - l'écran devient gris, mais le dialogue n'apparaît jamais.Essayez d'ajouter un attribut id à votre formulaire:
<form id="myform">
et déplacer$("#dialog").parent().appendTo($("form:first"));
avant$("#opener").click...
Salut Kamyar, j'ai essayé votre code suggestion. La boîte de dialogue charge, mais quand je clique sur le bouton "créer" toujours rien ne se passe.
OriginalL'auteur Kamyar