私はJqueryの初心者です。練習するための簡単な例をいくつか実行しようとしています。この例では、POST変数をphpフォームからインターネットで見つけたJquerymodaleポップアップに送信しようとしています。
私の問題は、送信リンクをクリックしてphpフォームを送信すると、フォーム変数をmodaleポップアップに送信できないことです。
私の場合、$nameの場合はvarなしでポップアップが表示されます。
ここに私のコード:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"></script>
<link rel="stylesheet" type="text/css" href="test.css" />
<script type="text/javascript" src="script.js"></script>
<form method = "POST" id = "formm" name="form1" action="recep.php" >
<input type="text" name="nom"/> <br>
<a href="#?w=500" rel="popup_name" class="poplight" name="nom" onclick="openwindow(this)";">test</a><br>
</form>
そして最後に私のscript.js:
$(document).ready(function() {
$('a.poplight[href^=#]').click(function() {
var popID = $(this).attr('rel'); //Trouver la pop-up correspondante
var popURL = $(this).attr('href'); //Retrouver la largeur dans le href
//Récupérer les variables depuis le lien
var query= popURL.split('?');
var dim= query[1].split('&');
var popWidth = dim[0].split('=')[1]; //La première valeur du lien
$('#' + popID).fadeIn().css({
'width': Number(popWidth)
})
.prepend('');
var popMargTop = ($('#' + popID).height() + 80) / 2;
var popMargLeft = ($('#' + popID).width() + 80) / 2;
$('#' + popID).css({
'margin-top' : -popMargTop,
'margin-left' : -popMargLeft
});
$('body').append('');
//Apparition du fond - .css({'filter' : 'alpha(opacity=80)'})
$('#fade').css({'filter' : 'alpha(opacity=80)'}).fadeIn();
return false;
});
$('a.close, #fade').live('click', function() { //Au clic sur le bouton ou sur le calque...
$('#fade , .popup_block').fadeOut(function() {
$('#fade, a.close').remove();
});
return false;
});
});
});
<div id="popup_name" class="popup_block">
<h2>Developpez.com</h2>
<p>Soh Tanaka est traduit sur dev.com.<?php if (isset($_POST['nom'])) { $nom = $_POST['nom']; echo 'la var est'.$nom; } ?></p>
</div>
script.jsにsubmit()条件を追加する必要があると思います。これは、リンクをクリックしたときにJqueryがhrefのみを選択するため、フォームを送信しないためです。
何か案が ??:(
ありがとうございました !!!