javascript - 获取在另一个函数中设置为变量的函数中的当前输入值。(I AM STUMPED) 内的代码示例
问题描述
我有一个难题,我正在尝试获取输入字段的输入值,但是,我需要在另一个函数中发生这种情况。
我已经有可以在这个其他函数之外工作的代码,但是我需要重构它以在我正在调用的另一个函数中工作。
工作代码和非工作代码的示例如下。
这是我获取输入的 HTML:
<!DOCTYPE HTML>
<HTML>
<head>
<title></title>
<meta charset="utf-8" />
<meta http-equiv="x-ua-compatible" content="ie=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="stylesheet" href="css/styles.css" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script type="text/javascript" src="js/require.js"></script>
<script type="text/javascript">
(function () {
var config = {
baseUrl: "js",
};
var dependencies = ["otherFile"];
require(config, dependencies);
})();
</script>
</head>
<body>
<div>
<label>Input URL</label>
<input type="url" />
<p id="targetInput"></p>
</div>
</body>
</html>
这是我试图在另一个函数中调用的非工作 JS:
function someOtherFunction() {
var getCurrentInput = function() { };
var input = document.querySelector("input");
var log = document.getElementById("targetInput");
input.addEventListener("input", getCurrentInput);
var getCurrentInput = function (e) {
log.currentInput = e.target.value;
};
}
});
最后,这里是在 someOtherFunction 范围之外工作的工作代码
var getCurrentInput = "";
var input = document.querySelector("input");
var log = document.getElementById("targetInput");
input.addEventListener("input", getCurrentInput);
function getCurrentInput(e) {
log.currentInput = e.target.value;
}
现在您可能会注意到这里没有提交表单,原因是此代码运行在一个 iframe 上,该 iframe 正在被另一个应用程序调用。提交在那里发生,但需要我调用一个函数来实现它,技术上不是提交,这意味着我无法像常规提交那样控制它。这就是为什么我需要在 someOtherFunction 中调用当前输入值。
任何帮助将不胜感激!本质上,我想获取输入中的值并使用 JSON 字符串的值更新我的 API。肯定有更好的办法!
解决方案
考虑到嵌套,起初有点难以理解,但是像这样?
const doThing = (e) => {
let input = document.getElementById("input");
let log = document.getElementById("targetInput");
log.textContent = input.value;
}
<div>
<label>Input URL</label>
<input type="url" id="input"/>
<p id="targetInput"> </p>
</div>
<button onclick="doThing()">Click</button>
本质上是一个外部提交,它接受一个内部输入值,并将其注入另一个内部元素?
推荐阅读
- wordpress - 如何找到导航菜单和菜单按钮的 CSS 选择器?
- c# - 从数据库中的数据运行大量活动函数
- sql-server - 将文件传输到 AWS S3 时出现奇怪的 SQL Server 减速
- mysql - 如何运行意外删除表的特定迁移
- macos - cron 上的屏幕截图显示背景而不是窗口内容
- html - 如何使用文本按钮创建图像
- python-3.x - 子进程 - 直接获取孩子的异常
- python - 将webapp部署到树莓派时的Python virtualenv?
- python - 是否可以访问超类的 cdef 属性?
- imagemagick - ImageMagick 错误:-对比度选项替换为 -level(嗯?)