2013-05-29 101 views
0

我有一點麻煩的情況:兩種形式同樣採用相同的字段和按鈕提交

我一直在使用相同的字段兩種形式。 我想當用戶點擊按鈕「下載」時,該表單將提交到下載表單。
如果用戶單擊「立即嘗試」按鈕,此表單將從「下載」中獲取數據(如果有)並提交給「立即嘗試」表單。

爲什麼我需要將兩個相同的字段提交給一個動作:如您在這些表單的底部所見。我有一個輸入隱藏字段「mkt_key」,因爲這個鍵會在頁面加載時由maketing工具生成,並且每個表單都會爲此字段賦予唯一值。所以,爲什麼我需要提交2個表格,因爲它需要通過營銷工具來跟蹤。

你可以看一下我的源位置:[here](http://jsfiddle.net/n2lose/8qVEv/)

回答

0

我無法使用您提供的鏈接查看源代碼。我假設這個問題有點像我提到的&提供的解決方案。

你可以使用jQuery來爲你做。

HTML:

<form id="myForm"> 
<input name="samefield1"/> 
<input name="samefield2"/> 
<input name="samefield3"/> 
<input name="samefield4"/> 
<input type="button" id="btn_dload" value="Download"> 
<input type="button" id="btn_try" value="Try Now"> 
</form> 

jQuery代碼:

$(function(){ 
$("#btn_dload").click(function(){ 
var data $("#myForm").serialize(); // this will serialize form data like 

           // samefield1=value1&samefield2 = value2; 
    $.ajax({ 
     data: data, 
     url: 'the download form submission url', 
     type: 'post', 
     success: yourcallback(); 
    }); 
    }); 
    $("#btn_try").click(function(){ 
    var data $("#myForm").serialize(); // this will serialize form data like 
           // samefield1=value1&samefield2 = value2; 
    $.ajax({ 
     data: data, 
     type: 'post', 
     url: 'the try now form submission url', 
     success: yourcallback(); 
    }); 
    }); 


}); 
0

完全以,這裏是我的意思是: 我有如下一種形式:

<div class="form"> 
    <form method="post" action="index.php" id="app_1065" name="app_1065"> 
     <input type="text" value="samefield" /> 
     <input type="text" value="samefield" /> 
     <input type="text" value="samefield" /> 
     <input type="text" value="samefield" /> 
     <!-- Key will be render when runtime and loading page --> 
     <input type="hidden" name="key" value="dloadform" /> 

     <input type="button" id="btn_dload" value="Download"> 
     <input type="button" id="btn_try" value="Try Now"> 
    </form> 
</div> 

<script> 
    $("#btn_dload").click(function(){ 
     var formDownload = $(".form").find("form:first"); 
     document.getElementById('mktForm_1065').submit(); 
     return false; 
    }); 

    $("btn_try").click(function(){ 
     var formTryNow = $(".form").find("form:first"); 
     $(formTryNow).attr("id", "app_1160"); 
     $(formTryNow).attr("name", "app_1160"); 
     $(formTryNow).find("input[name='mkt_key']").val("tryform"); 
     document.getElementById('app_1160').submit(); 
     return false; 
    }); 
</script> 
  • 說明:如果用戶點擊下載表單,它將使用for提交m id/name是app_1065,key =「下載」默認情況下。 如果用戶點擊按鈕立即嘗試,它會在提交表單之前用新的ID,名稱和嘗試現在的表格的鍵更新表單。

問題: - 現在下載表單默認工作正常。但我不明白爲什麼現在的表單在更新新的id,名稱和密鑰後不起作用。

+0

我已經找到了修復它的解決方案。 – n2lose

相關問題