gpt4 book ai didi

javascript - 按下复选框时更改输入形式

转载 作者:行者123 更新时间:2023-12-03 04:44:58 26 4
gpt4 key购买 nike

我想创建一个网络表单,让用户有机会更轻松地创建票证。

在此网络表单中,我有两个输入表单和一个复选框: Screenshot

我想要的是以下内容(通过 PowerPoint 创建): Screenshot

因此,如果用户单击该复选框,网络表单应自动禁用第二个输入表单并复制第一个输入表单的值和/或占位符。简而言之:如果用户单击复选框,第二个输入表单应该与第一个输入表单完全相同,只是它被禁用。

不幸的是我不知道如何做到这一点。现在我的代码如下所示:

输入字段 1(关键用户)+ 复选框:

<div class="form-group">
<label class="control-label col-sm-2" for="keyuser">Key-User:</label>
<div class="col-sm-10">
<input type="keyuser" class="form-control" id="keyuser" placeholder="Username Key-User">

<div class="checkbox">
<label onclick="checkbox()">
<input type="checkbox">
</label>Is the affected user
</div>
</div>

输入字段 2(受影响的用户):

  <div class="form-group">
<label class="control-label col-sm-2" for="affuser">Affected User:</label>
<div class="col-sm-10">
<input type="affuser" class="form-control" id="affuser" placeholder="Username affected user">
</div>

Checkbox() [现在根本不起作用]:

function checkbox() {
"use strict";
if (check === "False") {
check = "True";
$('#affuser').attr('placeholder', 'Username Key-User');

} else {
check = "False";
$('#affuser').attr('placeholder', 'Username affected user');
}

}

如何实现上述功能?

最佳答案

我想立即对您的脚本进行一些更改:

  • 不要使用内联 JS。相反,创建一个 onchange复选框(不是标签元素)的事件处理程序
  • 使用复选框的 ID,以便您的 <label>将在功能上附加到它。

对于 JS 来说,这非常简单:当 onchange 时事件注册在复选框元素上,通过简单地评估 .is(':checked') 来评估它是否被选中。 bool 值:

  • 如果选中:
    • 禁用 #affuser元素使用 .prop('disabled', true)
    • 使用 .attr('placeholder', ...) 更新占位符属性
  • 如果未选中:
    • 使用 .prop('disabled', false) 启用上述元素
    • 再次使用 .attr('placeholder', ...) 更新占位符属性

$(function() {
$('#checkbox1').on('change', function() {
if($(this).is(':checked')) {
$('#affuser')
.prop('disabled', true)
.attr('placeholder', $('#keyuser').attr('placeholder'));
} else {
$('#affuser')
.prop('disabled', false)
.attr('placeholder', 'Username affected user');
}
});
});
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0-alpha.6/css/bootstrap.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="form-group">
<label class="control-label col-sm-2" for="keyuser">Key-User:</label>
<div class="col-sm-10">
<input type="keyuser" class="form-control" id="keyuser" placeholder="Username Key-User">

<div class="checkbox">
<label for="checkbox1">
<input type="checkbox" id="checkbox1">
</label>Is the affected user
</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2" for="affuser">Affected User:</label>
<div class="col-sm-10">
<input type="affuser" class="form-control" id="affuser" placeholder="Username affected user">
</div>
</div>

关于javascript - 按下复选框时更改输入形式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42904623/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com