我在 html 中制作了一个表单,其中包含 2 个输入字段first name
和last name
,并将 required
属性添加到输入类型标签中。我还制作了两个按钮Submit
和View
。如果两个字段都为空,则显示please fill out this field attribute
消息。当我单击提交按钮时,我的表单中的数据使用 php 进入我的 sql 数据库,这很好。但是当我单击查看按钮时,我只想显示一条消息而不填充first name
和last name
文本区域。如何使用视图按钮执行此操作?
tl;dr:我希望输入类型标签的"必需"属性仅适用于提交按钮,而不适用于查看按钮。我应该怎么做?我使用HTML作为表单,CSS用于样式,PHP用于sql条目。谢谢。
你可以用JavaScript做类似的事情,例如,通过给你的每个输入一个ID,然后你可以检测何时点击视图按钮并删除"必需"属性。
下面是一个 JQuery 示例:
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script>
$( document ).ready(function() {
$("#view").click(function() {
$("#test1").removeAttr("required");
$("#test2").removeAttr("required");
});
});
</script>
</head>
<body>
<form action="example.php" method="POST">
First name:<br />
<input type="text" name="firstname" id="test1" required="required"><br />
Last name:<br />
<input type="text" name="lastname" id="test2" required="required"><br />
<input type="submit" value="Submit"> | <input type="submit" id="view" value="View">
</form>
</body>
</html>
JSFiddle
您还可以阻止点击事件的默认操作。在本例中,代码将如下所示:
$(document).ready(function() {
$("#view").click(function() {
return false;
});
});
或使用 preventDefault:
$(document).ready(function() {
$("#view").click(function(e) {
e.preventDefault();
});
});
两者似乎都可以正常工作。 #view(如上述答案所示)是要阻止触发必需属性的按钮的 id。