2014-04-02 63 views
0

我們用下面的代碼與電子郵件ID列表員工GET複選框值使用JavaScript動態

<tbody> 
<?php 
$sqlquery = mysql_query("select * FROM employee"); 
while($row=mysql_fetch_object($sqlquery)){         
?> 
<tr class="gradeA"> 
<td><input type="checkbox" name="eid" value="<?php echo $row->emailid;?>" onclick="send_email_form_test()"><?php echo $row->name;?></td> 
</tr> 
<?php }?> 
</tbody> 

點擊複選框時,下面的函數調用,點擊複選框

function send_email_form_test(){ 
var selected = new Array();  
$("input:checkbox[name=eid]:checked").each(function() { 
if($(this).val() !=""){ 
selected.push($(this).val()); 
}  
}); 

alert(selected.join(',')); 
var final_email = selected.join(','); 
document.getElementById("to").value =final_email; 
} 

後,電子郵件ID是出現在「to」textarea字段中。當我進入員工列表的第二頁時,我無法獲得「to」textarea字段,它將在第二頁上清空

<div> 
<label for="required">TO</label> 
<textarea name="to" cols="5" rows="10"></textarea> 
</div> 

<div> 
<label for="email">Subject</label> 
<input type="text" size="80" id="subject" name="subject" > 
<input type="submit" name="submit" value="submit"> 
</div> 

如何添加和刪除電子郵件ID用逗號分隔,當我點擊checkbox.I對時,我會去分頁的下一頁的問題

+0

使用複選框上的onclick將執行函數,無論是選中還是未選中。在onclick分配的末尾添加一個按鈕。此外,將複選框命名爲'name =「eid []」' – Onimusha

+0

如果您使用PHP分頁程序,則需要通過AJAX下載頁面並在本地分頁,或者在切換頁面之前使用AJAX將選定的電子郵件發送到服務器。當您的PHP每次點擊產生新頁面時,您無法在頁面上本地存儲某些內容。 –

回答

0

您可以添加「這個」參數給JavaScript函數作爲onclick =「send_email_form_test(this)」>那麼你將得到點擊複選框對象。然後,你就可以獲取點擊的複選框

0

我沒有測試它的價值,但我認爲這是你怎麼可以從所有頁面

<?php 
    //... 
    echo '<script>window.tablePage = ', $paginator->currentPage, ';</script>'; 
?> 

<script type="application/javascript"> 
//... 
pageSelected = selected.join(','); 

//get emails selected on other pages 
allSelected = JSON.parse(localStorage.getItem('emails')); 

//add currently selected emails 
allSelected[tablePage] = pageSelected; 
localStorage.setItem('emails', JSON.stringify(allSelected)); 

//output emails from all pages 
document.getElementById("to").value = allSelected.join(','); 
//... 
</script> 

(JSON庫是在這裏收集的郵件: https://github.com/douglascrockford/JSON-js/blob/master/json2.js