我想運行兩個腳本:一個用於加載頁面內容使用Ajax和另一個使用Ajax提交聯繫表格。AJAX腳本不工作後,頁面內容更改與另一個Ajax腳本
加載頁面內容:
<script>
$('#top_links a').click(function (e) {
e.preventDefault();
var link = $(this).attr('href');
$('#content').empty();
$.get(link, { },
function(data) {
$('#content').replaceWith($(data).find("#content"));
}
)
});
</script>
提交表單:
<script type="text/javascript">
$('#submit').click(function(event){
event.preventDefault();
var name = $('#name').val();
var email = $('#email').val();
var message = $('#message').val();
$.post("<?php echo bloginfo('template_directory') . '/inc/mailit.php';?>",
{
name: name,
email: email,
message: message
},
function(data) {
var n = data.indexOf('<span class="success_message">');
if (n !== 0) {
$('#message_box_1').empty().append(data);
} else {
$('#contact_form').empty().append(data);
}
}
);
});
</script>
兩個腳本都在頁腳和不包含在動態加載的內容。當我直接訪問聯繫頁面而不使用ajax來加載它的內容時,表單代碼完美地工作。但是當我使用ajax加載表單時,提交腳本停止工作。
這實際上是一個後續問題,我對其中一個我posted earlier。經過一番思考,我不能100%確定我之前收到的答案是準確的。答案依賴於表單提交代碼是加載內容的一部分,但這不是真實的,因爲我將所有代碼放入了不受內容更改影響的頁腳中。由於我無法取消選中答案,因此我需要重新發布。
你顯然改變東西是使用第二個腳本,你有沒有嘗試:'$(文件)。在( '點擊', '#submit',函數(事件){...' – adeneo