Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.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 onclick将值插入数组_Javascript_Arrays - Fatal编程技术网

Javascript onclick将值插入数组

Javascript onclick将值插入数组,javascript,arrays,Javascript,Arrays,我有一个图像地图,定义了几个区域。我想做的是,每当有人点击某个特定区域时,向数组中添加一个值,并在屏幕上实时显示该数组 在我的头部区域,我有数组(不确定这是否正确): var numArray=[]; 然后我在页面主体的某个地方 <p class="txt"><script type="text/javascript">document.write(numArray);</script></p> document.write(numArray

我有一个图像地图,定义了几个区域。我想做的是,每当有人点击某个特定区域时,向数组中添加一个值,并在屏幕上实时显示该数组

在我的头部区域,我有数组(不确定这是否正确):


var numArray=[];
然后我在页面主体的某个地方

<p class="txt"><script type="text/javascript">document.write(numArray);</script></p>

document.write(numArray)

区域如下所示:

<area shape="circle" coords="129,325,72" alt="1" href="javascript:numArray.push('1')">
<area shape="circle" coords="319,325,72" alt="2" href="javascript:numArray.push('2')">
<area shape="circle" coords="510,325,72" alt="3" href="javascript:numArray.push('3')">
<p id="pTxt" class="txt"></p>

<area shape="circle" coords="129,325,72" alt="1" href="#" onclick="addToArray(1);">
<area shape="circle" coords="319,325,72" alt="2" href="#" onclick="addToArray(2);">
<area shape="circle" coords="510,325,72" alt="3" href="#" onclick="addToArray(3);">
<script type="text/javascript">
    var numArray = [];
    function addToArray(num){
      numArray.push(num);
      document.getElementById("pTxt").innerHTML = numArray;
      return false;
    }
 </script>

例如,如果有人单击1,然后单击2,然后单击3,我希望数组在
中显示123


但是,当我使用此函数时,它不会向数组中添加任何内容(或者至少不会显示值)。

向JS中添加函数:

<script type="text/javascript">
    var numArray = [];
    function addNum(num) {
        numArray.push(num);
        document.querySelector(".txt").innerHTML = numArray.join('');
    }
</script>

var numArray=[];
函数addNum(num){
numaray.push(num);
document.querySelector(“.txt”).innerHTML=numArray.join(“”);
}
标记中删除脚本

<p class="txt"></p>

并更新


在JS中添加一个函数:

<script type="text/javascript">
    var numArray = [];
    function addNum(num) {
        numArray.push(num);
        document.querySelector(".txt").innerHTML = numArray.join('');
    }
</script>

var numArray=[];
函数addNum(num){
numaray.push(num);
document.querySelector(“.txt”).innerHTML=numArray.join(“”);
}
标记中删除脚本

<p class="txt"></p>

并更新


文档。只在加载页面时执行写入。要在元素中写入,最好使用
document.getElementById
(这需要向
中添加id),并用onclick事件替换
href=

这看起来像这样:

<area shape="circle" coords="129,325,72" alt="1" href="javascript:numArray.push('1')">
<area shape="circle" coords="319,325,72" alt="2" href="javascript:numArray.push('2')">
<area shape="circle" coords="510,325,72" alt="3" href="javascript:numArray.push('3')">
<p id="pTxt" class="txt"></p>

<area shape="circle" coords="129,325,72" alt="1" href="#" onclick="addToArray(1);">
<area shape="circle" coords="319,325,72" alt="2" href="#" onclick="addToArray(2);">
<area shape="circle" coords="510,325,72" alt="3" href="#" onclick="addToArray(3);">
<script type="text/javascript">
    var numArray = [];
    function addToArray(num){
      numArray.push(num);
      document.getElementById("pTxt").innerHTML = numArray;
      return false;
    }
 </script>

var numArray=[]; 函数addToArray(num){ numaray.push(num); document.getElementById(“pTxt”).innerHTML=numArray; 返回false; }
文档。只在加载页面时执行写入。要在元素中写入,最好使用
document.getElementById
(这需要向
中添加id),并用onclick事件替换
href=

这看起来像这样:

<area shape="circle" coords="129,325,72" alt="1" href="javascript:numArray.push('1')">
<area shape="circle" coords="319,325,72" alt="2" href="javascript:numArray.push('2')">
<area shape="circle" coords="510,325,72" alt="3" href="javascript:numArray.push('3')">
<p id="pTxt" class="txt"></p>

<area shape="circle" coords="129,325,72" alt="1" href="#" onclick="addToArray(1);">
<area shape="circle" coords="319,325,72" alt="2" href="#" onclick="addToArray(2);">
<area shape="circle" coords="510,325,72" alt="3" href="#" onclick="addToArray(3);">
<script type="text/javascript">
    var numArray = [];
    function addToArray(num){
      numArray.push(num);
      document.getElementById("pTxt").innerHTML = numArray;
      return false;
    }
 </script>

var numArray=[]; 函数addToArray(num){ numaray.push(num); document.getElementById(“pTxt”).innerHTML=numArray; 返回false; }
使用for循环遍历数组,边走边打印值,或者尝试numArray.toString();使用for循环遍历数组,边走边打印值,或者尝试numArray.toString();效果很好。有一个问题:有没有办法让它在数字之间加上逗号?现在显示的是1,2,3而不是123。是的,使用
numaray.join(“”)[更新答案以反映]效果很好。有一个问题:有没有办法让它在数字之间加上逗号?现在显示的是1,2,3而不是123。是的,使用
numaray.join(“”)
[更新了答案以反映这一点]这不是与我的答案几乎完全相同吗?不,你的答案要好得多,因为
join()
。很抱歉,我没有看到您在meNo问题之前回答,只是为了确保我没有遗漏任何内容。这与我的答案几乎完全相同吗?不,您的答案要好得多,因为有了
join()
。对不起,我没看到你在我出问题之前回答,只是确保我没有遗漏任何东西。