当将 api url 作为变量传递时,来自 API 的 GetJSON 数据不起作用
GetJSON data from an API is NOT working when passing api url as a variable
下面这个功能 100% 正常工作,
function myFunction() {
$(function () {
$.getJSON('abc/url', function (data) {
console.log(data);
});
});
}
但是,当我尝试这个(如下)时,即使它没有显示任何错误,它也无法正常工作。谁能说出为什么会这样?或者 API url 将始终被硬编码?
<!DOCTYPE html>
<html>
<head>
<script src="https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8="
crossorigin="anonymous"></script>
<script>
function myFunction() {
var URL = document.getElementById('textboxID').value;
$(function () {
$.getJSON(URL , function (data) {
console.log(data);
});
});
}
</script>
</head>
<body>
<form>
link:
<input id="textboxID" type="text">
<input onclick="myFunction()" type="submit">
</form>
</body>
</html>
你的代码对我有用,看看我代码中的例子 api url
function myFunction1() {
$(function () {
$.getJSON('https://api.github.com/users/hadley/orgs', function (data) {
console.log(data);
});
});
}
function myFunction2() {
var URL = document.getElementById('textboxID').value;
$(function () {
$.getJSON(URL , function (data) {
console.log(data);
});
});
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id='textboxID' value='https://api.github.com/users/hadley/orgs'>
<button onclick='myFunction1()'>function1</button>
<button onclick='myFunction2()'>function2</button>
它通过删除表单标签来工作,
<head>
<script src="https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8="
crossorigin="anonymous"></script>
<script>
function myFunction() {
var URL = document.getElementById('textboxID').value;
$(function () {
$.getJSON(URL , function (data) {
console.log(data);
});
});
}
</script>
</head>
<body>
link:
<input id="textboxID" type="text">
<input onclick="myFunction()" type="submit">
</body>
</html>
下面这个功能 100% 正常工作,
function myFunction() {
$(function () {
$.getJSON('abc/url', function (data) {
console.log(data);
});
});
}
但是,当我尝试这个(如下)时,即使它没有显示任何错误,它也无法正常工作。谁能说出为什么会这样?或者 API url 将始终被硬编码?
<!DOCTYPE html>
<html>
<head>
<script src="https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8="
crossorigin="anonymous"></script>
<script>
function myFunction() {
var URL = document.getElementById('textboxID').value;
$(function () {
$.getJSON(URL , function (data) {
console.log(data);
});
});
}
</script>
</head>
<body>
<form>
link:
<input id="textboxID" type="text">
<input onclick="myFunction()" type="submit">
</form>
</body>
</html>
你的代码对我有用,看看我代码中的例子 api url
function myFunction1() {
$(function () {
$.getJSON('https://api.github.com/users/hadley/orgs', function (data) {
console.log(data);
});
});
}
function myFunction2() {
var URL = document.getElementById('textboxID').value;
$(function () {
$.getJSON(URL , function (data) {
console.log(data);
});
});
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id='textboxID' value='https://api.github.com/users/hadley/orgs'>
<button onclick='myFunction1()'>function1</button>
<button onclick='myFunction2()'>function2</button>
它通过删除表单标签来工作,
<head>
<script src="https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8="
crossorigin="anonymous"></script>
<script>
function myFunction() {
var URL = document.getElementById('textboxID').value;
$(function () {
$.getJSON(URL , function (data) {
console.log(data);
});
});
}
</script>
</head>
<body>
link:
<input id="textboxID" type="text">
<input onclick="myFunction()" type="submit">
</body>
</html>