我有以下的AJAX代碼提交名稱/電子郵件/信息參數,以「messageaction.cfm」模板,並顯示原提交頁面上的那些相同的3個參數(正常工作):提交按鈕值不與阿賈克斯
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script>
<script type="text/javascript">
function submitForm() {
$.ajax({type:'POST', url:'messageaction.cfm', data:$('#ContactForm').serialize(), success: function(response) {
$('#ContactForm').find('.form_result').html(response);
}});
return false;
}
</script>
<form id="ContactForm" onsubmit="return submitForm();">
Name: <input type="text" name="name" value=""><br>
Email: <input type="text" name="email" value=""><br>
Message:<br> <textarea style="width: 200px; height: 100px;" name="message"></textarea>
<br>
<input type="submit" name="Choice" id="Choice" value="One">
<input type="submit" name="Choice" id="Choice" value="Two">
<div class="form_result"></div>
</form>
但是,我有2個提交按鈕(「One」和「Two」的相應值),並希望能夠檢測到哪個按鈕被按下。在一個正常的提交表單中(沒有ajax),根據我點擊哪個按鈕,變量「Choice」與相應的「One」或「Two」正確顯示。但在ajax表單中,無論我按哪個按鈕,「選擇」變量只顯示相同的「0」(默認值)。
我已經嘗試了2個其他ajax表單變體,但似乎無法傳遞輸入提交按鈕值的值。我做錯了一定有一些非常基本的東西,但我已經嘗試過所有我能想到的東西。任何建議將不勝感激!
菲利克斯,'欣賞小費,但我嘗試過,結果仍然相同。我還刪除了第二個輸入按鈕,以便有一個按鈕「ChoiceOne」,但是當我點擊它時,它仍然沒有傳回值「One」,而是仍然只顯示默認的「0」。這真讓我感到困惑。在標準表單提交中,顯示值「ChoiceOne = One」,但是通過Ajax檢索時,無論我嘗試什麼,它都只顯示「ChoiceOne = 0」。 – user3293560
我也嘗試以下Ajax代碼: \t <腳本類型= 「文本/ JavaScript的」> \t \t $(函數(){ \t \t \t $( '#FF')形式({ \t \t \t。 \t成功:功能(數據){ 的document.getElementById( '數據')的innerHTML =數據; \t \t \t \t。} \t \t \t}); \t \t}); \t \t <表格ID = 「FF」 行動= 「messageaction.cfm」 方法= 「POST」> – user3293560
使用document.getElementById('data')。innerHTML的同樣的問題。它不會回傳提交按鈕本身的實際值「One」。 – user3293560