2016-02-27 19 views
2

Second image ,First image我有一組鏈接,它將打開一個彈出窗體。
點擊鏈接時,我想發送一個參數給表單,然後在表單提交中使用它。
我可以設置要傳遞的值作爲ID爲<a>標記。我可以發送進一步嗎?作爲參數中的Javascript ID

<div> <span>Chapter $i:</span> 
    <a href='$viewlink '>View</a><span class='status'>Status:$status </span> 
    <a href=$reqlink id=$i data-rel='popup' class='ui-btn ui-btn-inline ui-corner-all ui-icon-check ui-btn-icon-left'>Request Access</a></div><br/>"; 
<form method="post" action=" " id="myPopup" data-role="popup" style="padding:10px"> 

    <h3>Enter your details</h3> 
    <input type="text" name="name" id="name" placeholder="Name" required> 
    <input type="email" name="email" id="email" placeholder="Email" required> 
    <input type="date" name="date" id="date" placeholder="Intended completion date" required> 
    <input type="submit" data-inline="true" value="Submit" name='submit'> 

</form> 

是否有可能在JavaScript做什麼?怎麼做?

+0

你試圖將數據推到一個JavaScript數組,然後該數組作爲查詢字符串添加到上提交表單的動作...?你必須防止首先發送表單,並且只有在你處理完查詢字符串後才明確發送它... – webeno

+0

@Dee試試這個可能會幫助你http://stackoverflow.com/questions/10626885/passing -data -a-bootstrap-modal –

+1

歡迎來到SO,只有當你想顯示可以在瀏覽器中運行的完整代碼時才使用snipets。如果您只需顯示代碼,請使用「{}」按鈕或使用4個空格縮進。 – jcubic

回答

2

選項#1:

設置隱藏的輸入,然後點擊鏈接時發送的值給他們。然後,您可以在發送表單的另一端獲得這些信息。

(注:在我的代碼示例中,我明確地使用PHP作爲這就是你似乎已經複製從剪斷你的代碼)

echo "<a href='$viewlink' onclick='$(\'#viewlink\').val(1);'>View</a><span class='status'>Status:$status </span> 

<!-- Do the following inside the form --> 

<input type='hidden' name='viewlink' id='viewlink' value='0' />"; 

而且你可以做到這一點的PHP接收端:

if ($_POST['viewlink'] == 1) { 
    // do stuff 
} 

選項#2:

Alt鍵事實上,您可以將數據發送到JavaScript數組,防止在提交表單時發佈,注意將數組添加到表單操作中作爲查詢字符串,然後明確發送表單。

echo "<a href='$viewlink' onclick='linkClicked('viewlink');'>View</a><span class='status'>Status:$status </span> 

這是你在你的JavaScript文件做什麼:

var queryString = []; 

function linkClicked (type) { 
    queryString[type] = 1; 
} 

$("#myPopup").submit(function(event) { 
    event.preventDefault(); 
    $(this).attr('action', $(location).attr('host') + $.param(queryString)); 
    $(this).submit(); 
}); 

而且你可以做以下的PHP接收端(注意從上面的$_POST已更改爲$_GET):

if ($_GET['viewlink'] == 1) { 
    // do stuff 
} 
+0

我會盡力去做。謝謝@webeno – Dee

+0

@Dee爲第一個選項添加了一些代碼。 – webeno

+0

@Dee我現在也在第二個選項中添加了一些代碼... – webeno

0

試試這個..

<a id = 'yourid' class = 'mybtn'>click me..</a> 

<form id = 'myform'> 
    .... 
</form> 

jQuery的

​​