使用JQuery添加输入按钮
我有一个有趣的问题,我需要解决。客户想要在输入元素中输入客户ID(使用扫描仪)并使用AJAX,它将用客户名称填充另一个输入元素。应该添加新的输入元素并设置焦点,以便客户可以输入另一个客户ID。我有两个需要解决的问题。首先,我需要捕获扫描器发送的输入并移至新添加的输入元素。其次,我需要添加事件到新的输入元素来处理AJAX调用和从扫描器发送的下一个输入。任何帮助将不胜感激。使用JQuery添加输入按钮
韦德
这是一个相当简单的模板,你可以从工作:
<form>
<fieldset>
Customer ID: <input name="id" />
Customer Name: <input name="name" />
</fieldset>
</form>
与Ja。
vascript:
jQuery(function($) {
var form = $('form'),
fieldset; // defined here but set below after we get our event attached
$('input[name=id]').keyup(function(e) {
if(e.keyCode === 13) {
var clone = fieldset.clone(true).appendTo(form);
clone.children('input[name=id]').focus();
$.get('getCustomerName.php', {id: this.value}, function(data) {
clone.children('input[name=name]').val(data);
});
}
});
fieldset = $('fieldset').clone(true); // clones our fieldset template with events
});
如何实现上面显示的功能?我对JQuery仍然很陌生,所以我几乎只用了ready事件的附加函数。 – Wade73 2010-09-17 09:21:17
@ Wade73,增加一个新的控制是一件容易的事情。您需要选择一个元素来将控件放入或放入。
$('#PlaceButtonIn').appendTo("new button html");
$('#PlaceButtonIn').append("new button html");
#PlaceButtonIn
可以是一个DIV或TD或东西放在新的控制是有用的。
新控件没有事件,以便使用实时赞扬这一点。
$('#PlaceButtonIn').append("<input type='button' class='NewButton'>");
$(document).ready(function(){
$('.NewButton').live('click', function() { //Do click event here });
});
NewButton类不需要存在于你的CSS中。如果您不知道控件ID或名称,那么使用jQuery选择器是一种非常方便的方法。
希望这是有帮助的。
看起来像这可能是我失踪。 – Wade73 2010-09-17 01:41:16
这也许可以回答你的疑问:
当输入获得焦点
$('#inputId').focus(function(){
///your code here
});
或者
$('#inputId').keypress(function(e) {
if(e.keyCode == 13) {
//your code here
}
});
Scanner = hardware peripheral?所以你无法弄清楚如何在html中获取扫描器的代码? – 2010-09-17 01:13:18
扫描仪只不过是一个键盘模拟器,但它在发送扫描的条形码密钥后发送一个回车键。我的问题是我需要处理输入键来触发其他代码。 – Wade73 2010-09-17 01:40:50