Jquery if语句基于输入值

时间:2016-02-07 22:15:35

标签: javascript jquery forms if-statement

我制作了一个简单的表格而且我无法让它做我想做的事情。在表单提交时,我需要它来检测某个类别的多个输入是否具有大于0的值(因为只应选择一个)。这是表单的html

      <form onsubmit="calcTime();">

  <table>
    <tr>
      <p>How long does the task take to perform?  (Choose one)</p></tr>
    <tr>
      <p>
        <input type="text" style="width: 3em;" id="seconds">&nbsp;  Seconds (Enter an integer 1-60)
        <input type="text" style="width: 3em;" id="minutes">&nbsp;  Minutes (Enter an integer 1-60)
      </p>
    </tr>
    <br>
    <tr>
      <p>How often do you perform the task? (Choose one)</p></tr>
    <tr>
      <p><input type="text" style="width: 3em;" id="day">&nbsp;x Per day&nbsp;
        <input type="text" style="width: 3em;" id="week">&nbsp;x Per week&nbsp;
        <input type="text" style="width: 3em;" id="month">&nbsp;x Per month&nbsp;
        <input type="text" style="width: 3em;" id="year">&nbsp;x Per year&nbsp;
      </p>
    </tr>
    <br>
    <tr>
      <p><input type="submit" value="Submit" id="submitButton"></p>
    </tr>

    <br>
    <tr>
      <p id="result"></p>
    </tr>
  </table>
</form>

到目前为止还没有工作的jQuery函数是......

function calcTime() {
var seconds = $('#seconds');
var minutes = $('#minutes');
var perDay = $('#day');
var perWeek = $('#week');
var perMonth = $('#month');
var perYear = $('#year');
if ((seconds.value > 0) && (minutes.value > 0)) {
alert('Please only choose either seconds or minutes!');
return false;
  }
}

由于

2 个答案:

答案 0 :(得分:1)

使用jquery method val检索元素值。

seconds.val()

如果你不使用jquery来选择元素,而是使用纯Javascript

var seconds = document.getElementById('seconds')

您将可以使用值属性seconds.value

Jquery选择返回&#39;它自己的&#39;对象不是本机HTMLElement

答案 1 :(得分:1)

使用jQuery,您可以将'if'语句更改为:

if(seconds.val()&gt; 0&amp;&amp; minutes.val()&gt; 0)

有关.val()方法的详细信息:http://api.jquery.com/val/