我有一個包含需要傳遞給javascript函數的電子郵件地址的php數組,但是當javascript嘗試處理地址時,出現語法錯誤:非法字符錯誤與電子郵件地址中的'@'...將php數組的電子郵件地址傳遞給javascript
我該如何解決這個問題?有沒有一種方法將電子郵件地址轉換爲字符串,然後再傳遞給javascript?或者我需要在數組傳遞給js時迭代數組,然後在js中創建一個新數組並將它們轉換爲字符串呢?
好吧,所以數組是由用戶使用複選框從列表中選擇電子郵件地址創建的,然後將其發佈到第二頁。
赫雷什PHP代碼到第一頁上創建陣列:
while ($row = mysqli_fetch_array($students_results)) {
echo'<div class="form-group"><div class="checkbox"><label><input type="checkbox" name="parentsemails[]" value=' . $row['parent_email'] . '">' . $row['parent_name'] . ' (Student: '. $row['student_name'] . ')</label></div></div>';
}
這然後發佈到seond頁要被傳遞給js函數。到陣列分配給一個PHP變量PHP是:
if (isset($_POST["parentsemails"])) {
$pe = $_POST['parentsemails'];
}
的函數內部的JS代碼:
email_a = new array(<?php echo implode(',', $pe); ?>);
地址出現要傳遞給JS正確地,在錯誤日誌我的電子郵件可以看到個別電子郵件,但與非法字符突出顯示...
任何幫助表示讚賞。
謝謝。
你可能忘了用引號括 –
地址哪裏是你的代碼示例?聽起來好像你並沒有將電子郵件作爲一個字符串包裹起來,例如'[email protected]' –
你可以逃脫@?可能是這樣的,或者像Kohjah說的那樣可能引用 – DWolf