2011-05-16 27 views
0

我有一個輸入字段(從中選擇日期的日曆)的網頁。
問題是我需要從2個不同的表單元素讀取輸入字段,每個表單元素都有自己的操作和其他值。從輸入標記讀取表單元素

 
|calendar| [do this] [do that] 

我不想複製兩種形式的輸入字段,因爲它看起來很傻。 有什麼建議嗎?

編輯:這裏有兩種形式:

<form action="/adm/user/credit/update?sms=<?=$id?>&user=<?=$user?>" method="post"> 
    <input type="hidden" name="isPaid" value="1"/> 
    <label for="datums">Datums: </label> 
    <input type="text" id="datums" name="datums"/> 
    <input type="submit" value="Paid" style="background-color:green; color:white"/> 
</form> 
<form action="/adm/user/credit/extend?sms=<?=$id?>&user=<?=$user?>" method="post"> 
    <input type="hidden" name="phone" value="<?=$phone?>"> 
    <select name="period"> 
     <option value="7">7</option> 
     <option value="14">14</option> 
     <option value="30">30</option> 
    </select> days 
    <input type="submit" value="Extend" style="background-color: blue; color: white"> 
</form> 

回答

3

只要給它唯一的ID,並使用document.getElementById這樣任何你想要的:

var myValue = document.getElementById("myInputID").value; 

這樣也沒關係,其中input位於,它甚至可以是任何形式的排外。

編輯:
讀取時提交的價值,首先onsubmit部件添加到相關表格:

<form action="....." onsubmit="ReadValue(this);"> 

現在在你的頁面有這樣的:

<script type="text/javascript"> 
function ReadValue(oForm) { 
    var myValue = document.getElementById("myInputID").value; 
    alert("value is: " + myValue); 
} 
</script> 

這將顯示作爲警報對話框的值..如果您想要使用該值填充隱藏的表單域,請改爲使用此類代碼:

function ReadValue(oForm) { 
    var myValue = document.getElementById("myInputID").value; 
    oForm.elements["myHiddenFieldId"].value = myValue; 
} 

希望它足夠清楚! :)

+0

不幸的是,我對javascript知之甚少,請問您可以添加一個使用示例嗎?如何在提交時讀取該值? – jurchiks 2011-05-16 12:07:36

+0

@jur sure - 看我的編輯。 – 2011-05-16 12:13:48

+0

所以我只是添加一個隱藏的字段到兩個窗體,並將其值設置爲外部輸入字段的值?像''這個值在提交時會改變嗎? – jurchiks 2011-05-16 12:15:14