Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/424.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 从不同ID获取内部HTML_Javascript_Html - Fatal编程技术网

Javascript 从不同ID获取内部HTML

Javascript 从不同ID获取内部HTML,javascript,html,Javascript,Html,我刚刚开始尝试学习Javascript,请耐心听我说。我试图通过点击一个按钮,从我页面一部分的列表中获取信息,并将其添加到一个包含三个位置的新分区中 列表中的每个项目都有自己的按钮,我需要脚本根据按钮被单击的次数知道将列表项目放置在哪个位置,该次数应与已添加到列表中的列表项目的数量一致 我已经尝试创建一个脚本来增加I,并将段落的id带入一个函数中,但我似乎无法使它工作。我希望通过计算按钮被点击的次数,它会将添加的每个新列表项放在新部分的下一个位置 我不知道如何使计数部分工作,但是,我刚刚想到,也

我刚刚开始尝试学习Javascript,请耐心听我说。我试图通过点击一个按钮,从我页面一部分的列表中获取信息,并将其添加到一个包含三个位置的新分区中

列表中的每个项目都有自己的按钮,我需要脚本根据按钮被单击的次数知道将列表项目放置在哪个位置,该次数应与已添加到列表中的列表项目的数量一致

我已经尝试创建一个脚本来增加I,并将段落的id带入一个函数中,但我似乎无法使它工作。我希望通过计算按钮被点击的次数,它会将添加的每个新列表项放在新部分的下一个位置

我不知道如何使计数部分工作,但是,我刚刚想到,也许我的函数的第一部分一直保持在零

我真的很感激能得到任何帮助

提前谢谢

这是我的密码:

<script>    
    function increase(place) {
    var i = 0;
    addToDilly(i, place);
    i++;
}

function addToDilly(num, place) {
    if num = 0 {
        document.getElementById("firstStop").innerHTML = document.getElementById(place).innerHTML;
    }
    if num = 1 {
        document.getElementById("secondStop").innerHTML = document.getElementById(place).innerHTML;
    }
    if num = 2 {
        document.getElementById("thirdStop").innerHTML = document.getElementById(place).innerHTML;
    }
}
</script>

<p id="firstStop">This is a paragraph.</p> 
<p id="secondStop">This is another paragraph.</p>
<p id="thirdStop">This is another paragraph.</p>
<hr/>
<p id="1">Royal Oak <button onclick="increase(1)">Add To Dilly</button></p> 
<p id="2">Ferndale <button onclick="increase(2)">Add To Dilly</button></p>
<p id="3">Chesterfield <button onclick="increase(3)">Add To Dilly</button></p>

我建议完全重写。如果您的目标是更新项目列表,只需按字面意思更新项目列表:

注意:您最初将问题标记为jQuery,所以这个初始答案在jQuery中

要添加的文本需要位于与按钮相关的元素中,但不包含按钮本身。对于本例,我将它们放在按钮之前

e、 g

更简单的HTML:

<ul id="list"></ul>
<hr/>
<p>Royal Oak</p>
<button>Add To Dilly</button>
<p>Ferndale</p>
<button>Add To Dilly</button>
<p>Chesterfield</p>
<button>Add To Dilly</button>
然后,如果要将项目限制为3,请添加以下内容:

if ($target.children().length < 3) {
    $target.append($('<li>').html(text));
}
请尝试以下脚本:

<script>
    var i = 0;

    function increase(place) {
        console.log(place);
        addToDilly(i, place);
        i++;
    }

    function addToDilly(num, place) {
        if (num == 0) {
            document.getElementById("firstStop").innerHTML = document.getElementById(place).innerHTML;
        }
        if (num == 1) {
            document.getElementById("secondStop").innerHTML = document.getElementById(place).innerHTML;
        }
        if (num == 2) {
            document.getElementById("thirdStop").innerHTML = document.getElementById(place).innerHTML;
        }
    }
</script>

下面是

您正在声明一个带有局部i变量的函数。。。我将永远是0。而是计算目标中的现有元素。另外,如果要将jQuery用作标记。。。请使用它:$'someid'比document.getElementByIdI更瘦/更好。如何计算现有元素?document.getElementByIdthirdStop.innerHTML=document.getElementByIdplace.innerHTML与$thirdStop.html$+place.html相同@糖浆我不太明白你的问题
<script>
    var i = 0;

    function increase(place) {
        console.log(place);
        addToDilly(i, place);
        i++;
    }

    function addToDilly(num, place) {
        if (num == 0) {
            document.getElementById("firstStop").innerHTML = document.getElementById(place).innerHTML;
        }
        if (num == 1) {
            document.getElementById("secondStop").innerHTML = document.getElementById(place).innerHTML;
        }
        if (num == 2) {
            document.getElementById("thirdStop").innerHTML = document.getElementById(place).innerHTML;
        }
    }
</script>