#jquery #ajax #forms #submit
#jquery #ajax #формы #Отправить
Вопрос:
я не знаю, что происходит не так с этим кодом:
<script language="javascript"> var jdownloader = false; </script>
<script language="javascript" src="http://127.0.0.1:9666/jdcheck.js"></script>
<script language="javascript">
jQuery(function($) {
$(document).ready(function() {
// Interceptamos el evento submit
if (jdownloader) {
$('#mysubmit').click(function() {
$('#form .jdown, #jdown, .jdown').submit(function() {
// Enviamos el formulario usando AJAX
$.ajax({
type: 'POST',
url: $(this).attr('action'),
data: $(this).serialize(),
// Mostramos un mensaje con la respuesta de PHP
success: function(data) {
$('#result').html(data);
}
})
return false;
});
});
} else {
$('#mysubmit').click(function() {
$('#form .jdown, #jdown, .jdown').submit(function() {
alert('Abre JDownloader.');
return false;
});
});
}
})
});
</script>
И HTML
<form ACTION="http://127.0.0.1:9666/flash/addcrypted2" target="hidden" METHOD="POST" id="<?php echo $post->ID; ?>" name="jdown" class="jdown">
<INPUT TYPE="hidden" NAME="passwords" VALUE="myPassword">
<INPUT TYPE="hidden" NAME="source" VALUE="http://jdownloader.org/spielwiese">
<INPUT TYPE="hidden" NAME="jk" VALUE="function f(){ return '31323334353637383930393837363534';}">
<INPUT TYPE="hidden" NAME="crypted" VALUE="<?php echo $crypted; ?>">
</form>
<button id="mysubmit">Submit</button>
То, что я пытаюсь сделать, это и форма отправки ajax, которая работает хорошо, но когда я добавляю
$('#mysubmit').click(function() {
});
чтобы поместить отправку туда, куда я хочу, за пределы формы, не работает.
Есть какие-нибудь идеи? СПАСИБО! =)
Ответ №1:
У меня есть ответ на ваши проблемы .. : D
попробуйте сделать так..
$(function () {
$('#mysubmit').click(function(){
if($('form[name=jdown]').submit(function(){return false;})){
$.ajax({
type: 'POST',
url: $('form[name=jdown]').attr('action'),
data: $('form[name=jdown]').serialize(),
success: function(data) {
$('#result').html(data);
}
});
}
return false;
});
});
надеюсь , поможет ..
Ответ №2:
Он .submit(function(){})
не отправляет форму, он просто устанавливает обратный вызов, который должен быть запущен при отправке формы (например, кнопка отправки нажата внутри формы). Вызывающий .submit()
(без аргументов) затем отправляет форму.
Комментарии:
1. Есть ли форма с jquery для отправки вне формы? Не могли бы вы показать мне, пожалуйста? Спасибо