2012-08-02 30 views
0

我加載當用戶點擊一個鏈接,並有額外的信息多選下拉出現holds[]集場是在各個環節沒有點擊

如果用戶不選擇「更多」的信息鏈接,然後holds[]下拉不會呈現,並且在後數據print_r($_POST);

對於AJAX不露面,成功(用戶點擊更多信息鏈接),它會顯示一段html,其中包含holds[]下拉列表(如下面的屏幕截圖所示)。

如果相應的「更多」信息鏈接沒有被點擊,是否可以添加到ajax/jQuery設置holds[]下拉爲隱藏字段?

任何幫助表示讚賞。

enter image description here

+0

看起來你正在使用'datatables'。我對麼? – Matt 2012-08-02 17:55:45

+0

不,只是一個常規的表格,在單擊「更多」鏈接之後插入tr。 – Brad 2012-08-02 17:56:41

+0

'隱藏字段'你的意思是?你是在談論只是持有信息,或在可展示的下拉菜單中的所有信息? – 2012-08-02 18:03:34

回答

0
<input class="hidden" /> <!--Will be hidden by defaul --> 


.hidden { 
    display:none; 
} 


$('.more').click(function(){ 
    $(this).siblings('.dropdown').toggleClass('hidden'); 
    //You haven't posted your html so I'm going to make some assumptions 
}); 
+0

我需要把它變成一個隱藏的領域。 Brad 2012-08-02 17:59:41

+0

@Brad:爲什麼'TYPE =「?hidden'你的意思是視覺隱藏權 – 2012-08-02 18:02:07

+0

如果用戶不點擊的?‘更多’鏈接信息,其尊敬的[]字段不在html中呈現,所以它基本上不存在,我希望它以某種形式呈現(無論用戶是否點擊了更多信息鏈接) – Brad 2012-08-02 18:04:01

0

你可以有more按鈕調用JavaScript函數做一個Ajax調用,它返回你正在尋找的數據,並在它被點擊的行後,插入到表:

$(".more").on('click', function() { 
    var rowId = $(this).attr('id'); 
    $.post("process.php", { 
      id: rowId 
     }, function (data) { 
      $(this).parent().parent().after(data); 
      $(this).html("<a href='#' class='close' id='" + $(this).attr('id') + "'>close</a>"); 
     } 
}); 

$(this).parent() // <td> containing "more" 
    .parent() // <tr> containing <td> containing "more" 
+0

是的,我已經有了。如果用戶沒有選擇相應的「更多」鏈接,它只是不呈現持有[]字段。我希望它能夠識別發佈後的持有字段,無論用戶是否點擊了相應的「更多」鏈接。 – Brad 2012-08-02 18:01:20

+0

@Brad如果'.remove()'這個數據永遠不會'POST',我建議用'hidden'風格將它插入到表中,然後簡單地用'more'/'close'鏈接。這樣,您不必擔心隱藏的「輸入」。 – Matt 2012-08-02 18:03:44