我有一個HTML表單,從複選框檢索某些選項:發送Javascript數組在郵件
<form action="" method="post" id="menuform" name="menuform">
<fieldset>
<legend>Select a Menu</legend>
<label>
<input type="radio" name="selectedmenu" checked value="menu01" ape-qty='8' ent-qty='1' pes-qty='1' sor-qty='1' car-qty='1' pos-qty='1' data-price='95' />
<span>First Item</span>
</label>
...(more)...
</fieldset>
<fieldset>
<legend id='aperitivosPrompt'>Elegir Aperitivos</legend>
<label>
<input type='checkbox' name='aperitivos' value="1" />
<span>Item 1</span>
</label>
<label>
<input type='checkbox' name='aperitivos' value="2" />
<span>Item 2</span>
</label>
<label>
<input type='checkbox' name='aperitivos' value="3" />
<span>Item 3</span>
</label>
...(more)...
</fieldset>
<fieldset>
<input type="submit" value="Enviar" />
</fieldset>
</form>
然後我送這個變量的JavaScript文件,我保存所有複選框選項在多個陣列
var menuform = document.getElementById('menuform'),
radios = document.getElementsByName('selectedmenu'),
aperitivos = document.getElementsByName('aperitivos'),
aperitivosPrompt = document.getElementById('aperitivosPrompt'),
totalPrice = document.getElementById('totalPrice'),
result = document.getElementById('result'),
aperitivosAllowed = 0,
currentSelectionAperitivos = [],
currency = '€';
function handleAperitivos(e) {
var count = getSelectedCountApe();
if (count > aperitivosAllowed) {
resetSelectApe();
} else {
currentSelectionAperitivos = getSelectedValuesApe();
}
}
...(more)...
function getSelectedCountApe() {
var count = 0;
for (var i = 0; i < aperitivos.length; i++) {
if (aperitivos[i].checked) count++;
}
return count;
}
...(more)...
那麼,如何在電子郵件中發送這些名爲currentSelectionAperitivos = []
的陣列呢?我希望在用戶選擇所有選項後,我會在收件箱中收到一封電子郵件,其中包含選定的選項。
我認爲我必須連接此表格和JS
文件與PHP
函數,並從那裏發送電子郵件。無論如何,我該如何做到這一點?
-EDITED-
我試圖用JSON的解決方案:
for (var i = 0; i < aperitivos.length; i++) {
var item = {
"valor": i,
"etiqueta": aperitivos[i].value
};
currentSelectionAperitivos.push(item);
}
currentJSON = JSON.stringify({currentSelectionAperitivos:currentSelectionAperitivos});
console.log(currentJSON);
所以現在我在瀏覽器控制檯中看到所有的 「值」 從田地HTML表單的<input>
。但不僅CHECKED值,而且我現在需要的是獲取此JSON.stringify並通過郵件使用PHP發送它。
正在處理表單的php在哪裏? – jeroen
研究如何通過電子郵件發送表格數據與PHP –
簽出phpmailer。其中一個最簡單的PHP電子郵件插件那裏https://github.com/PHPMailer/PHPMailer –