我试图在表单的输入值更改后在提交中添加一些文本。我只希望它添加一次,但是我的代码每次单击输入都会添加它。
Codepen:https://codepen.io/okass/pen/KbvvjL
<form>
<input id="input-1" type="submit" value="submit">
</form>
$(document).ready(function() {
$("form").submit(function(e) {
var txt = $(':input[type="submit"]');
txt.val("sorry for the wait")
txt.after("text to add")
e.preventDefault();
});
});
答案 0 :(得分:1)
您可以通过设置true / false来维护变量,如果值是 true ,则添加文本,否则不添加文本:
$(document).ready(function() {
var flag = true;
$("form").submit(function(e) {
var txt = $(':input[type="submit"]');
txt.val("sorry for the wait")
if(flag){
txt.after("text to add");
flag = false;
}
e.preventDefault();
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form>
<input id="input-1" type="submit" value="submit">
</form>