Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/379.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 在for循环中创建div的id时如何获取div值_Javascript_Jquery_Html_Css_Angularjs - Fatal编程技术网

Javascript 在for循环中创建div的id时如何获取div值

Javascript 在for循环中创建div的id时如何获取div值,javascript,jquery,html,css,angularjs,Javascript,Jquery,Html,Css,Angularjs,请告诉我这个问题的解决办法。 我正在使用for循环创建5个动态divs及其ids。我想获得循环计数器值和创建的div的每个html,格式为“counter:html”如1:123。现在我只得到循环计数器的值 <html> <div id="feed"></div> </html> <script> for (var i = 1; i <= 5; i++) { $('#feed').append('<div id

请告诉我这个问题的解决办法。 我正在使用for循环创建5个动态
div
s及其
id
s。我想获得循环计数器值和创建的
div
的每个html,格式为“counter:html”
1:123
。现在我只得到循环计数器的值

<html>
<div id="feed"></div>

</html>
<script>
  for (var i = 1; i <= 5; i++) {
    $('#feed').append('<div id="news' + i + '" value='
      123 '/>');



    var abc = $("#news" + i).attr("value");
    console.log(abc);
  }
</script>


对于(var i=1;i根据更新的问题更新答案。此代码适用于您。请尝试一下

for (var i = 1; i <= 5; i++) {
    $('#feed').append('<div id="news' + i + '">'+ i +': Test</div>');
}
(变量i=1;i)的

  • 不要使用
    id
    s使用
    class

  • '
    应该是
    '123'

  • 使用
    .html()
    而不是
    .attr(“值”)
  • for(var i=0;i试试这个

    $(文档).ready(函数(){
    
    对于(var i=1;i您使用的是
    id
    。您不能在多个
    div
    上使用
    id
    ,因此您需要使用
    class

    不太确定您想要什么,并且
    div
    标记不应该有值属性,如果您想添加定义的属性,请使用
    data-my\u属性
    除此代码外,一切正常:

    更改此选项:

    $('#feed').append('<div id="news' + i + '" value='123'></div>');
    
    $('#feed')。追加('');
    
    进入这个:

    $('#feed').append('<div id="news' + i + '" value="123"></div>');
    
    $('#feed')。追加('');
    
    这段代码对我来说根本不管用,但它确实:

    for (var i = 1; i <= 5; i++) {
    $('#feed').append('<div id="news' + i + '" value="123"/>');
    var abc = $("#news" + i).attr("value");
    console.log(abc);}
    


    用于(var i=1;我共享完整的代码。不清楚您试图实现什么。我只想获取div的值,即123。但它不是静态值。该值来自json api,我将该值附加到div的value属性中。因此我必须显示div的值。创建div的行的语法错误,因此根本不运行。将行更改为
    $('#feed')。追加(''');
    (注意添加的
    +
    'es)
    没有
    ,使用
    数据-
    属性实际值属性包含动态值。也就是说,每个div包含不同的值。@MohammadIqbal不,每个div包含不同的html,当我必须显示来自json的200个数据时,我必须做的一个重要区别api@MohammadIqbal如果你你想显示它,使用html标记,或者解释你想对数据做什么。这应该是一个注释,或者应该被详细说明为一个应答器,因为循环变量
    i
    被附加到
    id
    。因此id将是唯一的。
    '
    无效,这不能解决OP的codeWh的其他问题你的意思是无效,我知道
    属性声明无效,但该代码唯一的错误是这部分。他制作的console.log(abc)将从值的属性输出值。我的意思是这不是有效的html,请看它应该是
    '123'
    ,而一些浏览器可能会补偿“html汤”像这样,它不能可靠地跨平台工作,并且在许多情况下会破坏页面布局。我知道这是无效的,我在帖子中已经提到过,但这取决于@Mohammad Iqbal他想要什么以及为什么。也许他这样做是有原因的,否则他不知道如何编码。如果是这样,那就是我的错误。干杯。看到什么了吗我想说@Norlihazmey-Ghazali:我有一个json api,它包含多个数据列表,比如-data[id:1234 name:xyz]这是200多个数组数据。现在我必须在一个页面中显示这些数据。为此,我使用for循环创建div,并为您的快速回复分配div id alsoThanks,但当我使用您的代码时,它会在控制台中显示为这样。5未定义。表示for的计数器loop@MohammadIqbal它在我这边有效,如屏幕截图所示,你能帮我吗告诉我你是如何使用它的?但是@delighteddod我也必须增加div-idy,但是说增加div-id是一个不好的方法。当然可以。但是更好的方法是使用类。这正是类的用途。给它们一个类,而不是像这里所示的id。
    $('.news'))
    将使用类
    news
    创建所有元素的数组,您可以通过调用
    $('.news').eq(i)访问任意元素
    其中
    i
    是您希望从该数组中获取的元素的索引此代码段将生成以下输出:未定义:1未定义:2未定义:3未定义:4未定义:5我可以在Google Chrome控制台中看到123:1 123:2 123:3 123:4 123:5。