我一直在嘗試獲取 ip 地址的值,該地址已經在里面<p id='details'></p>,可以放入輸入 html 類的值中,也可以在最后一行找到。
我嘗試將其宣告為 php 變數,但我負擔不起。
<script>
var ipinfo;
$.getJSON("https://ipinfo.io", function (data) {
$("#details").html(data.ip)
})
</script>
<p id='details'></p>
<input type="text" name="ip" class="" value="@php echo ""; @endphp" readonly>
uj5u.com熱心網友回復:
從我可以看到你只需要一個令牌。
另外,我使用 ES6 fetch 方法來獲取 API 物件回應
fetch('https://ipinfo.io/json?token=e0b12a7d02537a').then(
(response) => response.json()
).then(
(jsonResponse) => {
//this will display the IP as a p elemenet text
$('#details').html('IP Address = ' jsonResponse.ip)
//here we are assigning it as a value to the input
$('input[name="ip"]').val(jsonResponse.ip);
}
)
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<p id='details'></p>
<input type="text" name="ip" class="" readonly>
uj5u.com熱心網友回復:
您可以首先通過將值復制到變數中來獲取特定 HTML 類的內容,然后通過將復制的變數的值分配給輸入值來注入該值。你可以通過使用普通的 Vanilla JavaScript 來實作這一點。
由于您的p標簽最初是空的,并且在p從網路獲取資料后將資料注入到標簽中,因此該程序成為異步任務。因此,您希望僅在獲取資料后才提供資料,因此您可以在 fetch 函式中添加值分配邏輯,如下所示:
var ipinfo;
$.getJSON("https://ipinfo.io", function (data) {
document.querySelector("#details").innerHTML = data.ip
const inject = document.querySelectorAll("input[type=text]")[0] //Identify the input element
inject.value = data.ip //Assign the returned value to input's value.
})
由于您希望將 fetch 的回傳值饋送到p標簽內容以及輸入標簽值,您可以直接分配它,而不是復制已經復制的值。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/405403.html
標籤:
上一篇:javascript-如何在不四舍五入的情況下格式化具有精確十進制數的數字?
下一篇:使用節點快遞運行服務器角度
