在手机上触发keydown(safari iphone)

时间:2017-06-30 19:03:50

标签: javascript jquery

我有这个脚本有一个keydown事件。它正在桌面上工作,但是当我在Safari中测试我的iphone时它不起作用。有没有办法在safari中针对移动设备的输入字段触发keydown?

        $('label:contains("Rock the Mall Concert")').closest('div').addClass('rockMall');
    $('div.rockMall label:contains("Student")').parent().next().find('input:eq(0)').keyup(function(){
       if ($(this).val() > 1){
         $(this).parent().find(".regQuant").css('display', 'block').text('Limited to 1 per person');
         $(this).val('1');
         var e = jQuery.Event("keydown");
         e.which = 13;
         e.keyCode = 13
         $(this).trigger(e);
      }
    });

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

我使用jQuery创建了这个代码片段。 你正在添加一个'keydown'事件,但它在所有浏览器和平台上都不可行,所以我使用了'change'事件并且它应该足够好。

如果输入更改其值,则会触发事件。

$('input').on('change', function() {
	// + operator is to parse the value to an integer.
  var ticket_quantity = +$(this).val();
	
  if (ticket_quantity < 1 || ticket_quantity > 20)
  {
  	$(this).val(1);
  }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form>
  <input type="number" name="ticket_quantity" placeholder="Tickets much?">
</form>