我想把我的两个jQuery函数合二为一。但我不知道怎么做。 我需要更改以将这两者合并为一个函数?
以下是代码:
$('#keyword').on('keyup', function (e) {
console.log(e.keyCode);
console.log($(this).text());
$('input[name="q"]').val($(this).val());
$('g-search').html($(this).val());
});
$(function () {
$('#title').on('keyup', function (e) {
console.log(e.keyCode);
console.log($(this).val());
var title = $(this).val();
$('span.title').text(title);
$('g-search').html(title);
});
});
答案 0 :(得分:4)
如果事件类型不同,您可以在单个函数中编写逻辑。
$(function () {
$('#keyword').on('keyup', function (e) {
anotherFunction(this);
});
$('#title').on('keyup', function (e) {
anotherFunction(this);
});
});
function anotherFunction(val){
}
或者你可以这样做。
$('#keyword,#title').on('keyup', function (e) {
});
答案 1 :(得分:2)
可以检查这个小提琴jsfiddle
$('#keyword,#title').on('keyup', function (e) {
console.log(e.keyCode);
console.log($(this).text());
$('input[name="q"]').val($(this).val());
$('g-search').html($(this).val());
});
答案 2 :(得分:2)
为每个元素添加一个公共类
HTML:
<input class="key common-class" type="text" size="50" maxlength="63" id="keyword"/>
<input class="url1 common-class" type="text" data-limit="60" size="50" maxlength="74" id="url"/>
JS:
$('.common-class').on('keyup', function (e) {
//combined code
var val = $(this).val();
if($(e.target).is('#keyword')) {
$('input[name="q"]').val(val);
} else {
$('span.title').text(val);
}
$('g-search').html(val);
});
答案 3 :(得分:1)
您只需在同一Ids
上添加event
{}
功能如下代码。
$('#keyword,#title').on('keyup', function (e) {
//Your code
})