繁体   English   中英

Javascript从05截断0

[英]Javascript truncating 0 from 05

我在javascript中遇到问题。 我有两个选择框,一个选择几个小时,一个选择几分钟。 当用户选择时间时,应自动设置AM / PM。

谁能帮我??? 我已经试过这段代码:

码:

<select class="cust_ddd3" id="phr" onchange="hors(this.value)">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    <option value="6">6</option>
    <option value="7">7</option>
    <option value="8">8</option>
    <option value="9">9</option>
    <option value="10">10</option>
    <option value="11">11</option>
    <option value="12">12</option>
</select>

<select class="cust_ddd2" id="pmns" onchange="mns(this.value);">
    <option value="00">00</option>
    <option value="05">05</option>
    <option value="10">10</option>
    <option value="15">15</option>
    <option value="20">20</option>
    <option value="25">25</option>
    <option value="30">30</option>
    <option value="35">35</option>
    <option value="40">40</option>
    <option value="45">45</option>
    <option value="50">50</option>
    <option value="55">55</option>
</select>

Pickup Time: <span id="hrs">08</span>:<span id="mns">00</span><span id="ap">AM</span>

Java脚本

<script type="text/javascript">
function hors(str)
{
  document.getElementById('hrs').innerHTML=+str;
}

function mns(str)
{
  alert(str);
  if(document.getElementById('phr').value<=11)
  {
    var pm="AM";
    document.getElementById('ap').innerHTML=pm;
  }
  else
  {
    var am="PM";
    document.getElementById('ap').innerHTML=am;
  }
  document.getElementById('mns').innerHTML=+str;
}
</script>

将分钟数转换为数字时

document.getElementById('mns').innerHTML=+str;

第一个零被丢弃(正常数字没有前导零)。

错误在这里document.getElementById('mns')。innerHTML = + str;。 您正在使用+ =,而应该使用+ =或=:

document.getElementById('mns').innerHTML = str;

= +将字符串转换为数字(因此,忽略左侧的零),然后将结果添加到原始值

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM