javascript - 将输入绑定到按钮单击函数的值
问题描述
我有一个使用 Bootstrap 的 HTML 用户界面,并且有一个下拉菜单和一些输入字段。我想要做的是用下拉菜单选择的值填充输入字段。到目前为止,我还无法绑定到该值并将其显示在输入值字段中。
这是我的代码:
<div id="create-job-pane">
<div class="container">
<h2>Create Job</h2>
<div class="dropdown">
<button class="btn btn-default btn-primary dropdown-toggle" type="button" data-toggle="dropdown">
Select Job Type to Schedule
<span class="caret"></span></button>
<ul class="dropdown-menu">
<li>
<a href="#"><button onclick="populateJobVal('option1')" class="btn btn-link">Option #1</button></a>
</li>
<li>
<a href="#"><button onclick="populateJobVal('option2')" class="btn btn-link">Option #2</button></a>
</li>
<li>
<a href="#"><button onclick="populateJobVal('option3')" class="btn btn-link">Option #3</button></a>
</li>
</ul>
</div>
</div>
<hr />
<!-- <p id="selection"></p> --> // Works if I populate it here
<div class="form-group">
<label>Job name</label>
<input type="text" class="job-name form-control"> // Bind value here
</div>
<div class="form-group">
<span class="btn btn-default btn-success" data-action="save">Save</span>
<span class="btn btn-default btn-warning" data-action="cancel">Cancel</span>
</div>
</div>
// ... other code
<script>
function populateJobVal(val) {
document.getElementById("selection").innerHTML = val;
}
</script>
我试过这个:
<input type="text" class="job-name form-control" value="selection">
还有这个:
<input type="text" class="job-name form-control" id="selection">
...但它没有绑定到输入字段。
当我的按钮被单击以出现在输入文本框中时,如何获取选择的值?
解决方案
只需交换innerHTML
tovalue
就可以了。
function populateJobVal(val) {
console.log(val);
document.getElementById("selection").value = val;
}
<div id="create-job-pane">
<div class="container">
<h2>Create Job</h2>
<div class="dropdown">
<button class="btn btn-default btn-primary dropdown-toggle" type="button" data-toggle="dropdown">
Select Job Type to Schedule
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
<li>
<a href="#"><button onclick="populateJobVal('option1')" class="btn btn-link">Option #1</button></a>
</li>
<li>
<a href="#"><button onclick="populateJobVal('option2')" class="btn btn-link">Option #2</button></a>
</li>
<li>
<a href="#"><button onclick="populateJobVal('option3')" class="btn btn-link">Option #3</button></a>
</li>
</ul>
</div>
</div>
<hr />
<div class="form-group">
<label>Job name</label>
<input type="text" class="job-name form-control" id="selection"> // Bind value here
</div>
<div class="form-group">
<span class="btn btn-default btn-success" data-action="save">Save</span>
<span class="btn btn-default btn-warning" data-action="cancel">Cancel</span>
</div>
</div>
推荐阅读
- azure - Azure B2C 使用自动生成的注册用户名设置客户策略
- mysql - 获取所有供应商生成的零件
- jquery - 在 TypeScript 中管理可排序的 JQueryUI
- google-cloud-dataflow - 如何从数据流作业中发送和过滤结构化日志
- python - PYthon 和 Appium:如何转到父元素
- python - 使用 Python Click 创建分层命令
- javascript - 加载脚本和清单违反了内容安全策略指令
- java - 运行本机查询时发生 ConverterNotFoundException
- android - 如何确定 GMail 用于传递我的应用程序接收到的文件的 MimeType?
- php - 基本 Stripe 集成无法加载支付页面