1

如果将特定单词输入到输入框中,我无法弄清楚显示消息的方式。如果将日期(例如“01/07/2013”​​)输入到输入框中,我基本上是在尝试让 javascript 显示消息。

这是我的html <p>Arrival Date</p> <input type="text" id="datepicker" id="food" name="arrival_date" >

我正在使用查询数据选择器来选择日期。

4

3 回答 3

1

您可以在属性中插入代码onchange

onchange="if(this.value == 'someValue') alert('...');"

或创建新功能

function change(element){
    if(element.value == 'someValue'){
        alert('...');
    }
}

并添加属性

onchange="change(this);"

或添加事件

var el = document.getElementById('input-id');
el.onchange = function(){
    change(el); // if 'el' doesn't work, use 'this' instead
}

我不确定它是否有效,但它应该:)

于 2013-07-19T21:23:31.307 回答
1

用于 .val()获取输入的值并将其与字符串进行比较

var str = $('#datapicker').val(),   // jQuery

   // str = document.getDocumentByI('datapicker').value ( vanilla js)

    strToCompare = '01/07/2013';

if( str === strToCompare) {

    // do something
}

并将其包含在任一change或任何 keyup 事件中以调用它..

$('#datepicker').change(function() {

     // code goes here
});

更新

试试下面的代码。

$(function () {
    var $datepicker = $('#datepicker');
    $datepicker.datepicker();
    $datepicker.on('change', function () {
        var str = $datepicker.val(),
            strToCompare = '07/19/2013';

        if (str === strToCompare) {

            console.log('Strings match')
        }
        else {
             console.log('boom !!')   
        }
    });
});

检查小提琴

于 2013-07-19T21:08:55.160 回答
0

您的输入有 2 个 ID。您需要删除id="food". 那么以下应该适用于 IE >= 9:

document.getElementById('datepicker').addEventListener(
  'input',
  function(event) {
    if (event.target.value.match(/^\d+\/\d+\/\d+$/))
      console.log("Hello");
  }, false);
于 2013-07-19T21:17:43.803 回答