从理论上讲,将Javascript输入到Submit上的HTML表单,并将#action to PHP$_GET(同一文件中的所有代码)添加到表单中是否可行?
我的代码要求用户通过此代码选择日期:从理论上讲,将Javascript输入到Submit上的HTML表单,并将#action to PHP$_GET(同一文件中的所有代码)添加到表单中是否可行?,php,javascript,html,calendar,onsubmit,Php,Javascript,Html,Calendar,Onsubmit,我的代码要求用户通过此代码选择日期: <script type="text/javascript" charset="utf-8"> var k3 = new Kalendae(document.getElementById("cal"), { months:3, format:'DD-MM-YYYY', mode:'single' });
<script type="text/javascript" charset="utf-8">
var k3 = new Kalendae(document.getElementById("cal"), {
months:3,
format:'DD-MM-YYYY',
mode:'single'
});
</script>
如果我回显$dateValue,理论上它应该回显原始javascript输入吗?如果否,需要如何修改?只需使用
<form action="" method="post">
相反,您应该更新有关更改的calandar信息,将其存储在隐藏的输入字段中。我知道提交带有哈希标记的表单会在多个浏览器中造成问题。如果您从表单标记中删除#
,如下所示:
<form name="input_data" action="#" method="post"
onSubmit="javascript:location.href="?date_value=" + k3.getSelected();">
这会将get值与表单中的post值一起发送,您可以通过更新表单中的onSubmit属性并删除edit函数来完成此操作,而无需使用其他函数,如下所示:
<body>
<form name="input_data" action="" method="post" onSubmit="javascript:this.action='?date_value'+k3.getSelected();">
...
</form>
</body>
...
不要像OP那样混搭POST和GET,不。
if (isset($_POST['save'])) { // Your stuff here
<form name="input_data" action="#" method="post"
onSubmit="javascript:location.href="?date_value=" + k3.getSelected();">
<script type="text/javascript">
function edit() {
document.input_data.action = "?date_value="+k3.getSelected();
}
</script>
<body>
<form name="input_data" action="" method="post" onSubmit="javascript:edit();">
...
</form>
</body>
<body>
<form name="input_data" action="" method="post" onSubmit="javascript:this.action='?date_value'+k3.getSelected();">
...
</form>
</body>