2017-05-24 57 views
0

我在我的#edit-cat(按鈕編輯類別)上使用ajax調用來獲取響應。編輯按鈕還會在點擊時顯示引導模式。該模式具有帶有編輯該特定類別的字段的表單。所以在ajax調用完成後,可以使用php填充模態表單嗎?(二硝基甲苯我想用js或jquery的這種可能的話!)使用php在Modal中填充表單字段

注:我知道它可以在阿賈克斯成功領域使用jQuery來完成,只需要知道它可能用PHP,以及如何?

我的js文件是這樣的:

$(document).on('click','#edit-cat', function(){ 
    var cat_edit_id = $(this).attr('data-id'); 
    $('add_cat').addClass('fadeOut'); 
    $.ajax({ 
    url: 'test.php', 
    method: 'get', 
    dataType: 'json', 
    data: {'cat_edit_id':cat_edit_id }, 
    success:function(data){ 
    console.log(data); 
    } 
}); 
}); 

回答

0

您將填充你的模式窗體裏面test.php的PHP,接收GET或POST值,它們填充到test.php的結構,將所有前端輸出將模態添加到實際屏幕的正文中,並將其附加到Ajax成功中。

你的JS

$(document).on('click','#edit-cat', function(){ 
    var cat_edit_id = $(this).attr('data-id'); 
    $('add_cat').addClass('fadeOut'); 
    $.ajax({ 
    url: 'test.php', 
    method: 'get', 
    dataType: 'json', 
    data: {'cat_edit_id':cat_edit_id }, 
    success:function(data){ 
     $('body').html(data); 
     //or 
     $('body').prepend(data); 
     //or 
     $('body').append(data); 
    } 
}); 
}); 

test.php的:

<?php 
     include("include/db_conn.php"); 
     include("include/functions.php"); 
     if(isset($_GET['cat_edit_id'])){ 
     $row = selectCategory($_GET['cat_edit_id']); 
     $row = mysqli_fetch_assoc($row); 
     //inside include use $row as you want 
     include("include/modals/category_modal.php"); 
     } 

?> 

只有斷言,您的test.php都呈現模式的HTML部分像你想,那Ajax時回報將帶來什麼的鏈接正在顯示。

+0

謝謝你的答案,你說的是有道理的,但可以拋出一些如何獲得模態代碼作爲Ajax響應? – cdx530

+0

看看我的編輯,我以爲你已經明白了。避免編輯答案,你沒有自信地測試和驗證。 – calexandre

+0

好的,所以我嘗試了它,但'$('body')。html(data);'似乎刪除的所有標記,並用模式標記替換它。搜索了一下以定位':: before'僞類,但jquery不能定位那些尚未存在的東西。 – cdx530