我正在创建用户表单,其中主页访问完成textbox
阻止用户直接输入数据(文本框输入自动来自另一个表单),
<input type="text" name="hvstatus" value="<?= isset($_POST['enqnumbr']) ? htmlspecialchars($hvdone) : '' ?>">
当用户点击提交按钮时,如果文本框的值为空,则应该需要完成访问textbox
。
请帮忙
答案 0 :(得分:0)
根据规范,必须禁用或只读必填字段。这只是标记所需字段和使用JavaScript以防止用户键入/粘贴任何内容的组合:
HTML:
<form action="index.php" method=post>
<input required type="text" name="hvstatus" value="">
<input type="submit" value="save">
</form>
使用Javascript:
function makeReadOnly(e) {
e.preventDefault();
}
var input = document.querySelectorAll('[name=hvstatus]')[0];
input.addEventListener('paste', makeReadOnly);
input.addEventListener("keypress", makeReadOnly);
答案 1 :(得分:0)
谢谢大家,
为了防止我的用户将readonly文本框保存为空值,如果readonly文本框的值为空,我创建了我的提交按钮。使用jQuery。
<p>Home Visit Done:
<input type="text" id="message" name="hvstatus" value="<?= isset($_POST['enqnumbr']) ? htmlspecialchars($hvdone) : '' ?>" id="message" readonly>
<input type="submit" id="sendButton" value="save" style="width: 182px; height: 35px; font-size: 20px; background-color: green; color: white;">
jQuery代码:
<script>
$(document).ready(function(){
var checkField;
//checking the length of the value of message and assigning to a variable(checkField) on load
checkField = $("input#message").val().length;
var enableDisableButton = function(){
if(checkField > 0){
$('#sendButton').removeAttr("disabled");
}
else {
$('#sendButton').attr("disabled","disabled");
}
}
//calling enableDisableButton() function on load
enableDisableButton();
$('input#message').keyup(function(){
//checking the length of the value of message and assigning to the variable(checkField) on keyup
checkField = $("input#message").val().length;
//calling enableDisableButton() function on keyup
enableDisableButton();
});
});
</script>