簡體   English   中英

html腳本變量分配

[英]html script variable assignment

所以我有一個腳本塊:

<script>
var totalPopulation = 0;

for(xxxxx){
  totalPopulation = totalPopulation + xxx
}
</script>


<tr>
  <input type="text" name="censusPop" value=totalPopulation/>
<tr>

我對JavaScript還是很滿意。 但是,是否可以將腳本塊中變量的值分配給HTML元素(如輸入類型)? 我知道該代碼無法訪問。

希望它可以幫助您了解javascript的工作方式

<html>
<head>
<script>
    var totalPopulation = 0;

    function addAndShowPopulation(population) {
         totalPopulation = totalPopulation + population;

         var input_tag = getTag('my_input_id');
         input_tag.value = totalPopulation;
    }

    function startAdding() {
         addAndShowPopulation(10);

         setTimeout( function(){startAdding();},1000);
    }

    function getTag(id) {
       return document.getElementById(id);
    }

</script>
</head>
<body onload="startAdding();">

<div>
     <input type="text" id="my_input_id" name="censusPop" value="" placeholder="Total Population"/>

</div>
</body>
</html>

是的,您只需要給輸入一個id,例如“ id = my_input_id”; 然后,在javascript中,只需編寫:

$("my_input_id").value=totalPopulation;

這就是ajax的工作方式:找到html元素ID,然后使用javascript值動態填充。

請注意,在JS之前閱讀html。 否則,$(“ my_input_id”)將返回Null

更重要的是,您需要執行以下操作:

<tr>
 <td>
  <input type="text" id="censusPop" name="censusPop" value=""/>
 <td>
<tr>
<!-- Other stuff -->
<script>
var totalPopulation = 10;
// or for loop, or whatever here.
var censusText = document.getElementById('censusPop');
censusText.value = totalPopulation;
</script>
</body>

HTML和JavaScript可以交互,但不能直接交互。 最好的辦法是使用<script>標記來設置更新瀏覽器DOM的代碼。 通過將<script>標記放置在HTML之后(通常在<body>標記的底部),可以使瀏覽器有機會在實際嘗試使用元素之前創建它們。

另一個注意事項: <tr>標記應包含<td>標記,這是行和列之間的區別。

如果您需要執行多個DOM操作,我建議使用jQuery是正確的方法。

<tr>
    <input id="censusPop" type="text" name"censusPop" value=""/>
</tr>
<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<script>
    // make sure, the code is executed when the DOM is ready
    $(function () {
        // grab the input element by its ID
        var $input = $('#censusPop'),
            totalPopulation = 0;
        // do your population calculations
        totalPopulation = ....;
        // assign the value to the input element
        $input.val(totalPopulation);
    });
</script>

暫無
暫無

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

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