javascript - HTML Select Dropdown ID 未传递给 Javascript 函数 getelementbyid 值为 null
问题描述
新手在这里,试图向队友展示客户端休息操作的价值,因为他们依赖脚本和python。不确定是我使用数字作为 value 属性还是我引用 getelementbyid 错误。老实说,这些东西可能都不是:)
我试图在 MakeUrl 的 getelementbyid 中显式引用分配给 IP 地址的 id,但它仍然失败。我还以为它是空的,因为它使用的是默认值,但我将它注释掉了,我仍然得到错误。
错误:
未捕获的类型错误:无法读取 null 的属性“值”(MakUrl 函数)
function makeUrl() {
var ip = document.getElementById("apigatewayip").value;
return "https://" + ip + "/api/v0/sessions"
};
function createSession(_url) {
return $.ajax({
"url": _url,
"method": "POST",
"timeout": 0,
"headers": {
"Content-Type": "application/json"
},
"data": JSON.stringify({
"gatewayVersion": "1.00.1.15"
}),
});
}
createSession(makeUrl());
createSession(makeUrl()).success(function() {
});
<h1>Making AJAX Rest Calls</h1>
<div class="custom-select" style="width:200px;">
<select name="selectip" id="apigatewayip" onchange="makeUrl">
<option value="" disabled selected>API Gateway IP</option>
<option value="169.254.1.10">169.254.1.10</option>
</select>
<button onclick="createSession">Submit</button>
</div>
解决方案
您需要设置处理程序来调用您的函数,而不仅仅是分配:
<button onclick="createSession()">Submit</button>
此外,您可以在createSession
函数中创建 url:
function createSession() {
var ip = document.getElementById("apigatewayip").value;
var _url = "https://" + ip + "/api/v0/sessions"
console.log(_url) // Use this for ajax call
/*$.ajax({
"url": _url,
"method": "POST",
"timeout": 0,
"headers": {
"Content-Type": "application/json"
},
"data": JSON.stringify({
"gatewayVersion": "1.00.1.15"
}),
});*/
}
<h1>Making AJAX Rest Calls</h1>
<div class="custom-select" style="width:200px;">
<select name="selectip" id="apigatewayip">
<option value="" disabled selected>API Gateway IP</option>
<option value="169.254.1.10">169.254.1.10</option>
</select>
<button onclick="createSession()">Submit</button>
</div>
推荐阅读
- nginx - Nginx:在上游离线时捕获发布请求
- excel - 将 PDF 拆分为每页的新文件 - Excel VBA
- javascript - vscode 无法启动,无法连接 WSL
- http - 在通过 HTTP 提供 MJPEG 时,如何为 multipart/x-mixed-replace 选择边界?
- javascript - JavaScript 正则表达式在组合正则表达式时添加受保护的模式
- java - 如何使用反射通过接口创建实例?
- rust - 如何检查 NEAR 账户是否部署了智能合约并实现了所需的接口?
- google-cloud-platform - 如何使用 Terraform 获取默认的 GCP 项目和区域?
- excel - 使用文件对话框插入图片时出现 Excel VBA 路径错误
- etl - 勺子查找获得两行而不是重复的列