我有一个带有输入字段的网页(用于选择日期的日历)。
问题是我需要从两个不同的表单元素读取输入字段,每个元素都有自己的操作和其他值。
|calendar| [do this] [do that]
I don't want to copy the input field in both forms since it would look silly. Any suggestions?
Edit: here's the two forms:
<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>
最佳答案
只需给它唯一的 ID 并在您想要的任何地方使用 document.getElementById
即可:
var myValue = document.getElementById("myInputID").value;
这样,输入
位于何处并不重要,它甚至可以位于任何形式之外。
编辑:
要在提交时读取值,请首先将 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;
}
希望它足够清楚! :)
关于php - 从表单元素外部的输入标签读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6016954/