【发布时间】:2017-02-08 10:07:50
【问题描述】:
我有一个问题,我在html5 中的 POST 公式提交了一个错误的隐藏输入值。但是,更多信息可能会有所帮助。
function changeActivity () {
if(document.getElementById('input.edit.user.activity').value=="0"){
document.getElementById('input.edit.user.activityButon').className="btn-block btn-lg btn-danger";
document.getElementById('input.edit.user.activityButon').innerHTML="Mark user as inactive";
document.getElementById('input.edit.user.activity').value="1";
}else{
document.getElementById('input.edit.user.activityButon').className="btn-block btn-lg btn-success btn-block";
document.getElementById('input.edit.user.activityButon').innerHTML="Mark user as active";
document.getElementById('input.edit.user.activity').value="0";
}
}
<form action="" method="post">
<input type="hidden" name="user_activity" id="input.edit.user.activity" value="1">
<button class="btn-block btn-lg btn-danger btn-block" type="button" onclick="changeActivity()" id="input.edit.user.activityButon" style="border-style: none">Mark user as inactive</button>
<button class="btn-block btn-lg btn-primary" type="submit" style="border-style: none;margin-bottom: 0.3%;">Update user</button>
</form>
所以,当我在 PHP 中提交 $_POST['user_activity'] 总是 0(字符串)`。
编辑:我不知道它是什么,但现在它可以工作了!
【问题讨论】:
-
在我身边工作正常..
-
是的,工作正常,您可以使用 console.log(document.getElementById('input.edit.user.activity').value); 来检查 input.edit.user.activity 函数;
-
您可以发布另一个页面,因为当您提交页面时,它会重新加载页面并再次输入值设置为 0。
-
@Cripi - 您如何将表单数据发送到服务器端。通过使用任何 AJAX 调用或 HTML 表单的默认 POST 方法。
标签: javascript php html forms post