簡體   English   中英

如何在同一頁面上的JavaScript中顯示選項結果

[英]How to display option result in JavaScript on the same page

我是JS的新手,仍然在學習基礎知識。 做出選擇后,我無法在<div>的同一頁面上顯示結果。 由於某種原因,結果顯示在新頁面上。

JS代碼:

<script>
  function changeFunc(choice){
    var x = choice.value;
    document.write("You choose " + x + " option");
  }
</script>

HTML:

<div id="test">
  <h2>Choose one</h2>
  <select onchange="changeFunc(this)">
   <option>1</option>
   <option>2</option>
   <option>3</option>
   <option>4</option>
 </select>
</div>

不要使用document.write。 而是在html中創建一個div並將結果寫入該div。

HTML:

<div id='result'></div>

Javascript:

function changeFunc(choice)
{
   var x = choice.value;
   document.getElementById("result").innerHTML = "You choose " + x + " option";
}

而不是使用document.write使用node.innerHTML ..

 <head>
   <script>    
      function changeFunc(choice){
        var x = choice.value;
       //document.write("You choose " + x + " option");
        document.getElementById("result").innerHTML = "You choose " + x + " option";
    }
   </script>
 </head>
 <body>
   <div id="test">
     <h2>Choose one</h2>
     <select onchange="changeFunc(this)">
       <option>1</option>
       <option>2</option>
       <option>3</option>
       <option>4</option>
     </select>
  </div>
<div id="result"></div>

write()方法主要用於測試:如果在完全加載HTML文檔后使用它,它將刪除所有現有的HTML。

注意:當此方法不用於測試時,通常用於向document.open()方法打開的輸出流中寫入一些文本。

您可以定義一個新的DIV,然后通過innerHTML對其進行更新。

這是一個工作示例:

  var displayDiv = document.getElementById('displayResult'); changeFunc = function(choice){ var x = choice.value; displayDiv.innerHTML = "you choose" + x; } 
 <div id="test"> <h2>Choose one</h2> <select onchange="changeFunc(this)"> <option>1</option> <option>2</option> <option>3</option> <option>4</option> </select> </div> <div id="displayResult"></div> 

https://jsfiddle.net/u1rfwcf1/3/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM