使用模式表单(javascript、html)编辑多个用户
大家好,我的问题是在我的用户管理页面中,我已经在一个表中显示了所有的管理员用户,每个用户都分配了一个删除和编辑按钮 单击“编辑”时,给定用户的详细信息以模式形式显示。在编辑详细信息中有一个密码和确认密码框,当我单击第一个用户的编辑详细信息时,确认密码的验证显示为“密码不匹配”,但当我单击第二个用户时,确认密码不验证 下面是我遇到问题的源代码,如果有任何帮助,我将不胜感激:使用模式表单(javascript、html)编辑多个用户,javascript,php,jquery,html,bootstrap-modal,Javascript,Php,Jquery,Html,Bootstrap Modal,大家好,我的问题是在我的用户管理页面中,我已经在一个表中显示了所有的管理员用户,每个用户都分配了一个删除和编辑按钮 单击“编辑”时,给定用户的详细信息以模式形式显示。在编辑详细信息中有一个密码和确认密码框,当我单击第一个用户的编辑详细信息时,确认密码的验证显示为“密码不匹配”,但当我单击第二个用户时,确认密码不验证 下面是我遇到问题的源代码,如果有任何帮助,我将不胜感激: <a rel="tooltip" title="Edit" id="e<?php echo $id; ?>
<a rel="tooltip" title="Edit" id="e<?php echo $id; ?>" href="#edit<?php echo $id; ?>" data-toggle="modal" class="btn btn-success"></i>Edit</a>
<div id="edit<?php echo $id;?>" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-body">
<div class="alert alert-info"><strong>Edit User</strong></div>
<form class="form-horizontal" method="post">
<div class="control-group">
<label class="control-label" for="inputEmail">Firstname</label>
<div class="controls">
<input type="text" id="inputEmail" name="firstname" value="<?php echo $row['firstname']; ?>" required>
</div>
</div>
<div class="control-group">
<label class="control-label" for="inputEmail">Lastname</label>
<div class="controls">
<input type="text" id="inputEmail" name="lastname" value="<?php echo $row['lastname']; ?>" required>
</div>
</div>
<div class="control-group">
<label class="control-label" for="inputEmail">Mobile Number</label>
<div class="controls">
<input type="text" id="inputEmail" name="mobilenumber" value="<?php echo $row['mobilenumber']; ?>" required>
</div>
</div>
<input type="hidden" id="inputEmail" name="id" value="<?php echo $row['admin_id']; ?>" required>
<div class="control-group">
<label class="control-label" for="inputPassword">Password</label>
<div class="controls">
<input type="text" name="password" id="password" required>
</div>
</div>
<div class="control-group">
<label class="control-label" for="inputPassword">Confirm Password</label>
<div class="controls">
<input type="text" name="confirmpassword" id="confirmpassword" required>
</div>
</div>
<div class="control-group">
<div class="controls">
<button name="edit" type="submit" class="btn btn-success"> Update</button>
</div>
</div>
<script type="text/javascript">
window.onload = function () {
document.getElementById("password").onchange = validatePassword;
document.getElementById("confirmpassword").onchange = validatePassword;
}
function validatePassword(){
var confirmpassword=document.getElementById("confirmpassword").value;
var password=document.getElementById("password").value;
if(password!=confirmpassword)
document.getElementById("confirmpassword").setCustomValidity("Passwords Don't Match");
else
document.getElementById("confirmpassword").setCustomValidity('');
//empty string means no validation error
}
</script>
</form>
</div>
<div class="modal-footer">
<button class="btn" data-dismiss="modal" aria-hidden="true"> Close</button>
</div>
</div>
<?php
if (isset($_POST['edit'])){
$admin_id=$_POST['id'];
$firstname=$_POST['firstname'];
$lastname=$_POST['lastname'];
$mobilenumber=$_POST['mobilenumber'];
$password= sha1 ($_POST['password']);
mysql_query("update admin set firstname = '$firstname', lastname = '$lastname', mobilenumber = '$mobilenumber', password = '$password' where admin_id='$admin_id'")or die(mysql_error()); ?>
<script>
window.location="adminusers.php";
</script>
<?php
}
}
?>
欢迎来到堆栈溢出!如果你能更清楚地知道你到底有什么问题,那么回答这个问题对我们来说是很有帮助的。现在的行为是什么,你希望它是什么?嗨,约翰,谢谢你的回复,我刚刚在我上面的帖子中添加了一个屏幕截图(验证问题),说明它对第一个用户的工作方式,我遇到的问题是,当我为除第一个用户之外的任何其他用户单击编辑时,确认密码的验证“密码不匹配”不显示。在您提供的屏幕截图中,密码不匹配,因此我理解的行为是正确的。如果您单击其他用户并输入相同的密码,此问题是否仍然存在?是的,您的权利屏幕截图中的行为对于第一个用户是正确的,但是当我为其他用户单击“编辑”并键入不同的密码时,验证“密码不匹配”从您发布的代码和对问题的描述来看,我唯一的想法是getElementById()
可能正在搜索您的文档,并找到具有该Id的第一个元素。如果有多个元素具有Idconfirmpassword
或password
,这将是一个问题。这是你代码的一部分,还有更多吗?另外,在浏览器中点击F12可以让您在javascript代码中设置断点并帮助您调试:)