javascript警告以确认值是否输入两次

时间:2016-02-14 21:04:05

标签: javascript

我有一张表格:

// 10 times
<input type="text" name="cityname" class="autocompletecity">
<input type="text" name="cityID" class="autocompletecityID">

当我输入城市名称时,它会使用以下代码从数据库中自动填充城市名称和cityID:

<?php  for ($i = 0; $i < 10; $i++) { /*in the field class add $i */  ?>
  $(function() {
    function log( message ) {
      $( "<div>" ).text( message ).prependTo( "#log" );
      $( "#log" ).scrollTop( 1 );
    }
    $( ".autocompletecity<?php echo $i ?>" ).autocomplete({
      source: "/*path to json*/",
      select: function( event, ui ) {
        var item = ui.item;
        if(item) {
          $(".autocompletecityID<?php echo $i ?>").val(item.cityID);
          $(this).val(item.value +' ' + item.country);
          return false;
        }
      }

      //code from J.D.
      select: function( event, ui ) {
        var item = ui.item;
        if(item) {
          $('input[name="cityID"]').each(function(index, element) {
            var $element = $(element);
            if ($element.value() == item.cityID) {
              alert('This city has already been selected');
            }
          });
        }
      }
    })
    .autocomplete( "instance" )._renderItem = function( ul, item ) {
      return $( "<li>" )
        .append( "<a>" +item.value + " " +item.country + "</a>" )
        .appendTo( ul );
    };
  });

<?php } ?>

在自动填充cityID之后,如果输入了相同的cityID,我想显示一个警告框:单击“确定”确认,或单击“取消”以重复输入清除cityname和cityID。 我试图在jqueryui中搜索,但没有运气......

谢谢!

1 个答案:

答案 0 :(得分:1)

试试这个:

select: function( event, ui ) {
  var item = ui.item;
  if(item) {
    $('input[name="cityID"]').each(function(index) {
      var $element = $(this);
      if ($element.value() == item.cityID) {
        alert('This city has already been selected');
      }
    });
  }
}