【发布时间】:2021-07-07 08:49:09
【问题描述】:
我有以下重定向到确认页面的表单,我想在浏览器中禁用 javascript 时保持这种行为,但是当启用 javascript 时,我想使用弹出窗口进行确认。 当启用 javascript 以仅显示确认弹出窗口时,如何禁用表单操作? ps:我必须使用jquery ui-lightness 插件,这就是我不使用引导模式的原因。
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link href="lib/jquery-ui-1.12.1.ui-lightness/jquery-ui.min.css" rel="stylesheet" type="text/css" />
<link href="lib/jquery-ui-1.12.1.ui-lightness/jquery-ui.theme.min.css" rel="stylesheet" type="text/css" />
<link href="lib/jquery-ui-1.12.1.ui-lightness/jquery-ui.structure.min.css" rel="stylesheet" type="text/css" />
<script src="lib/jquery-3.6.0.min.js" type="text/javascript"></script>
<script src="lib/jquery-ui-1.12.1.ui-lightness/jquery-ui.min.js" type="text/javascript"></script>
</head>
<body>
<script>
$("#btn_trash").click(function() {
var ret = null;
$('#confirmDialog').dialog({
resizable: false,
height: 300,
width: 500,
modal: true,
autoOpen: true,
buttons: {
Oui: function() {
ret = "yes";
$(this).dialog("close");
},
Non: function() {
ret = "no";
$(this).dialog("close");
}
},
close: function() {
if (ret !== null)
$("#content").html("You answered <b>" + ret + "</b>.");
else
$("#content").html("You didn't answer.");
}
});
});
</script>
<form id="delete_board_form" action='board/submit_delete' method='post'>
<input type='text' name='delete' value='<?= $board->id ?>' hidden>
<button id="btn_trash" class="btn" type="Submit">
<svg class="bi text-white" width="20" height="20">
<use xlink:href="assets/ressources/bootstrap-icons/bootstrap-icons.svg#trash" />
</svg>
</button>
</form>
<div id="content"></div>
<div id="confirmDialog" title="Attention" hidden>
<p>Confirmez-vous le lancement de cette opération irréversible ?</p>
</div>
</body>
【问题讨论】:
-
您的问题归结为“如何防止使用 JavaScript 提交表单”,这很容易研究。
-
@CBroe 谢谢你的帮助,我没有用这些术语搜索。在用您的术语进行研究之后,您很快就找到了答案!
标签: javascript jquery forms popup