Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将段落替换为JSON中的城市名称_Javascript_Jquery_Html_Json - Fatal编程技术网

Javascript 将段落替换为JSON中的城市名称

Javascript 将段落替换为JSON中的城市名称,javascript,jquery,html,json,Javascript,Jquery,Html,Json,在构建天气应用程序时,我遇到了一个问题。它必须自动检测我们的位置,并提供适当的温度和位置,例如城市名称。我试图用JSON中的数据替换p。我特别想用一个城市的名字来代替段落。由于某种原因,它不起作用 这是我的HTML: <body> <div class="container-fluid"> <i class="fa fa-thermometer-empty fa-2x" aria-hidden="true"></i> <

在构建天气应用程序时,我遇到了一个问题。它必须自动检测我们的位置,并提供适当的温度和位置,例如城市名称。我试图用JSON中的数据替换p。我特别想用一个城市的名字来代替段落。由于某种原因,它不起作用

这是我的HTML

<body>
  <div class="container-fluid">
    <i class="fa fa-thermometer-empty fa-2x" aria-hidden="true"></i>
    <br><br><br>
            <form>
                <input type="radio" name="celsiusOrFahrenheit"    value="fahrenheit"> Fahrenheit &deg;F;<br>
            <input type="radio" name="celsiusOrFahrenheit" value="celsius" checked> Celsius &deg;C<br>
           </form>
  <div class="yourlocation">
    <h1>Your location is: </h1>
     <p class="yourLocationGoesHere">
     </p>
 </div>

 <h1>Your current weather is: </h1>

     <div class="showTemperature">
       <p class="showDegree">32</p>
      </div>

      </div>
</body>

请提供帮助。

数据是指您的json文档,因此应该是:

html += "<p>'" + data.name + "'</p>";
html+=”“+data.name+”

”;

len
变量只保存长度;)

您试图获取JSON长度的城市名称,这是错误的。简单地做:

data.name

这是有效的解决方案。希望有帮助

 $(document).ready(function(){
    $.getJSON("http://api.openweathermap.org/data/2.5/weather? q=London,uk&appid=7f5806c8f3fd28b03e2d6580a50732d6", function (data){

        var len = data.length;
        var html = "";

        html += "<p>'" + data.name + "'</p>";
        $(".yourLocationGoesHere").html(html);
    });
});
$(文档).ready(函数(){
$.getJSON(“http://api.openweathermap.org/data/2.5/weather? q=英国伦敦&appid=7f5806c8f3fd28b03e2d6580a50732d6“,功能(数据){
var len=data.length;
var html=“”;
html+=“”+data.name+“

”; $(“.yourlocationgoesher”).html(html); }); });
这里有一个bug:
html+=“”+len.name+”

它应该是
html+=“”+data.name+”

但是要注意,除了一个明显的数据错误之外,您的代码生成了一个错误的、无效的html,其中一个
元素包含另一个
元素。您应该单独使用
$('.yourlocationgoesher').text(data.name)
,而不是处理
.html
的两行代码。非常感谢。非常感谢。我认为他们是出于时尚的考虑。谢谢你,亨利,但费边早些时候给出了答案。非常感谢!
html += "<p>'" + data.name + "'</p>";
 $(document).ready(function(){
    $.getJSON("http://api.openweathermap.org/data/2.5/weather? q=London,uk&appid=7f5806c8f3fd28b03e2d6580a50732d6", function (data){

        var len = data.length;
        var html = "";

        html += "<p>'" + data.name + "'</p>";
        $(".yourLocationGoesHere").html(html);
    });
});