Javascript 如何将textbox的值获取到脚本中的变量?

Javascript 如何将textbox的值获取到脚本中的变量?,javascript,Javascript,我写过这样的剧本 function calculateDiff(){ _start = "1:00 PM"; _end = "1:00 AM"; _start_time = parseAMDate(_start); _end_time = parseAMDate(_end); if (_end_time < _start_time){ _end_time = parseAMDate(_end,1); } var

我写过这样的剧本

function calculateDiff(){

    _start = "1:00 PM";
    _end = "1:00 AM";

    _start_time = parseAMDate(_start);
    _end_time = parseAMDate(_end);

    if (_end_time < _start_time){
        _end_time = parseAMDate(_end,1);
    }

    var difference= _end_time - _start_time;

    var hours = Math.floor(difference / 36e5),
        minutes = Math.floor(difference % 36e5 / 60000);
    if (parseInt(hours) >= 0 ){
        if (minutes == 0){
            minutes = "00";
        }
        alert(hours+":"+minutes);
    }
}
function parseAMDate(input, next_day) {

    var dateReg = /(\d{1,2}):(\d{2})\s*(AM|PM)/;

    var hour, minute, result = dateReg.exec(input);

    if (result) {
        hour = +result[1];
        minute = +result[2];

        if (result[3] === 'PM' && hour !== 12) {
            hour += 12;
        }
    }
    if (!next_day) {
        return new Date(1970, 01, 01, hour, minute).getTime();
    }else{
        return new Date(197var start = document.getElementById("usr1").value;
  var end = document.getElementById("usr2").value;0, 01, 02, hour, minute).getTime();
      }
   }
函数calculateDiff(){
_start=“下午1:00”;
_结束=“凌晨1:00”;
_开始时间=parseAMDate(\u开始);
_结束时间=parseAMDate(_结束);
如果(结束时间<开始时间){
_end_time=parseAMDate(_end,1);
}
var差=\u结束\u时间-\u开始\u时间;
var小时=数学下限(差/36e5),
分钟=数学下限(差值%36e5/60000);
如果(parseInt(小时)>=0){
如果(分钟==0){
分钟=“00”;
}
警报(小时+“:”+分钟);
}
}
函数parseAMDate(输入,下一天){
var dateReg=/(\d{1,2}):(\d{2})\s*(AM | PM)/;
变量小时、分钟、结果=dateReg.exec(输入);
如果(结果){
小时=+结果[1];
分钟=+结果[2];
如果(结果[3]=='PM'和时间!==12){
小时+=12;
}
}
如果(!下一天){
返回新日期(1970、01、01、小时、分钟);
}否则{
返回新日期(197var start=document.getElementById(“usr1”).value;
var end=document.getElementById(“usr2”).value;0,01,02,hour,minute).getTime();
}
}
在这里,对于_start和_end,我现在已经给出了一些值,我希望这些值应该从一个文本框中获取,我已经编写了如下代码

<form action="calculateDiff()">
Select  start time:<input type="time" name="usr1">
 Select  end time: <input type="time" name="usr2">
<input type="submit">
</form>

选择开始时间:
选择结束时间:
在文本框(usr1)中选择时间时,如何获取脚本函数的时间?
plz help me

我建议在输入字段中添加一个
id
属性:

<form action="calculateDiff()">
    Select  start time:<input type="time" name="usr1" id="startTime">
    Select  end time: <input type="time" name="usr2" id="endTime">
    <input type="submit">
</form>
document.getElementById(“usr1”)
将返回HTML文本字段对象本身,它有一些属性。其中之一是
value
,它表示文本字段中的内容(您甚至可以使用javascript更改它)

在此处阅读有关输入元素的更多信息:

试试这个

_start = document.getElementsByName('usr1')[0].value; //It will fetch the value of the first element in the DOM with the name usr1
_end = document.getElementsByName('usr2')[0].value; //It will fetch the value of the first element in the DOM with the name usr2

您可以像这样获得输入值

var _start = document.getElementsByName("usr1")[0].value;
var _end = document.getElementsByName("usr2")[0].value;

请记住,这将需要在输入标记中添加一个id,以及当前的id。我的总代码是如何计算时间差在我的url中显示calculateDiff()?usr1=01%3A00&usr2=02%3A00,找不到网页错误为comming@NagaPhaneendra表单上的
操作
属性是将数据发送到的地址。您可能想改用
onsubmit
。无论如何,请在我的url中阅读更多关于html表单的内容,它变得像这样calculateDiff()?usr1=01%3A00和usr2=02%3A00@MuhammadWaqas与我的答案相比,你的答案有什么不同?@JohnR dude你也是对的,我没有看到你的答案feeds@NagaPhaneendra为什么要传递函数,只需将result更改为输入类型submit to button,就像calculateDiff()一样显示在我的url中?usr1=01%3A00&usr2=02%3A00如果您确实在文本框中使用
id
,请更新您的HTML代码,然后检查
else
部分
if(!next_day)
的语法错误。
var _start = document.getElementsByName("usr1")[0].value;
var _end = document.getElementsByName("usr2")[0].value;