ページ全体をリロードせずに、投票の質問と同じ領域とページに投票の結果を表示しようとしています。結果を取得して新しいページに表示することはできますが、質問がある場所の html を置き換えて結果の html に置き換える方法がわかりません。
HTML (アンケートの質問を含む)
<div id="poll-area">
<!-- Voting poll -->
<fieldset>
<form action="javascript:void(0);" id="pollid" name="myform" method="POST">
<label><input type="radio" name="answer" value="left" id="option_left" />Yes</label>
<label><input type="radio" name="answer" value="right" id="option_right" />No</label>
<input type="submit" name="submit" id="submit" value="Vote" />
<input type="hidden" name="id" value="pollid" />
</form>
</fieldset>
<!-- End voting poll -->
</div>
ポーリングを処理するためのAJAX呼び出し:
var $j = jQuery.noConflict();
jQuery(document).ready(function($j) {
$j("form").submit(function(){
var str = $j(this).serialize();
$j.ajax({
url: "poll_vote.php",
type: "POST",
data: str,
cache: false,
success: function(result) {
window.location.replace("poll_results.php");
}
});
return false;
});
});
*window.location.replace("poll_results.php")* の代わりに、#poll-area 内の HTML を poll_results.php の #poll-area に置き換えたいと思いますが、そうします方法がわからない。
投票結果のHTML (poll_results.php に含まれるもの)
<div id="poll-area">
<fieldset>
<legend>Results</legend>
<ul>
<li>
<span class="total-votes">Yes</span>
<br />
<div class="results-bar" style="width:52%;">
52%
</div>
</li>
<li>
<span class="total-votes">No</span>
<div class="results-bar right-bar" style="width:48%;">
48%
</div>
</li>
<li>
</ul>
<p>Total votes: 100</p>
</fieldset>
</div>
助けてくれてありがとう!