Create keydown or keypress event with enter for select to navigate through results with keyboards in vanilla javascriptTrigger a keypress/keydown/keyup event in JS/jQuery?Keypress or keydown event handling in gridWhy 'keydown' event works like 'keypress' event?Triggering a keydown event programmatically in vanilla JavascriptTrigger keyboard event in vanilla javascriptUnable to capture keydown and keypress events simultaneously in JavaScriptkeydown, keypress event on window.printJavascript change target element of keydown / keypress eventCall Enter event on keypress javascriptTrigger Enter keypress in vanilla JS
Should I twist DC power and ground wires from a power supply?
Bookshelves: the intruder
Why are there five extra turns in tournament Magic?
What were the "pills" that were added to solid waste in Apollo 7?
Good examples of "two is easy, three is hard" in computational sciences
How do I balance a campaign consisting of four kobold PCs?
Taylor series leads to two different functions - why?
Why is Drogon so much better in battle than Rhaegal and Viserion?
Failing students when it might cause them economic ruin
Parse a C++14 integer literal
Can a generation ship withstand its own oxygen and daily wear for many thousands of years?
Why didn't Daenerys' advisers suggest assassinating Cersei?
How many Dothraki are left as of Game of Thrones S8E5?
What do you call bracelets you wear around the legs?
Why is so much ransomware breakable?
on the truth quest vs in the quest for truth
What color to choose as "danger" if the main color of my app is red
Why use a retrograde orbit?
How come Arya Stark wasn't hurt by this in Game of Thrones Season 8 Episode 5?
Cathy’s Composite party is powered by three Prime Pals. Can you find them?
Gambler's Fallacy Dice
How can sister protect herself from impulse purchases with a credit card?
Lock out of Oracle based on Windows username
How to draw pentagram-like shape in Latex?
Create keydown or keypress event with enter for select to navigate through results with keyboards in vanilla javascript
Trigger a keypress/keydown/keyup event in JS/jQuery?Keypress or keydown event handling in gridWhy 'keydown' event works like 'keypress' event?Triggering a keydown event programmatically in vanilla JavascriptTrigger keyboard event in vanilla javascriptUnable to capture keydown and keypress events simultaneously in JavaScriptkeydown, keypress event on window.printJavascript change target element of keydown / keypress eventCall Enter event on keypress javascriptTrigger Enter keypress in vanilla JS
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;
I'm trying to create a way to use keyboard to sort through a results list from an API call. I've got the search portion working, just can't figure out how to create the eventlistener.
This is my autocomp.js
export default class Autocomp {
constructor(rootEl, options = )
this.rootEl = rootEl;
this.options =
numRes: 10,
data: [],
...options,
;
this.init();
createResEl(res)
const fragment = document.createDocumentFragment();
res.forEach((res) =>
const el = document.createElement('li');
el.classList.add('res');
el.textContent = res.text;
// Pass the value to the onSelect callback
el.addEventListener('click', () =>
const onSelect = this.options;
if (typeof onSelect === 'function') onSelect(result.value);
);
// This is where I'm attempting to create KeyDown
el.addEventListener('keydown', () =>
const onSelect = this.options;
if (typeof onSelect === 'function') onSelect(result.value);
);
fragment.appendChild(el);
);
return fragment;
And this is my index.js
function getAPI(api)
fetch(api)
.then((res) => return res.json() )
.then(function(data)
let arr = data.map(user => (
text: user.login,
value: user.id,
));
window.data = arr;
)
.then(function()
new Autocomplete(document.getElementById('guser'),
data,
onSelect: (UserId) =>
console.log('selected github user id:', UserId);
,
);
)
.catch(error => console.error(error))
;
And lastly my index.html where it is rendered:
<div class="users-group form-group">
<label>Github User:</label>
<div id="guser"></div>
</div>
<script src='./index.js'></script>
Right now I'm able to click on an item from my results list and it will console.log as per my onSelect for the click eventListener. However the keyboard portion doesn't work and I'm not quite sure about what changes to make.
javascript
add a comment |
I'm trying to create a way to use keyboard to sort through a results list from an API call. I've got the search portion working, just can't figure out how to create the eventlistener.
This is my autocomp.js
export default class Autocomp {
constructor(rootEl, options = )
this.rootEl = rootEl;
this.options =
numRes: 10,
data: [],
...options,
;
this.init();
createResEl(res)
const fragment = document.createDocumentFragment();
res.forEach((res) =>
const el = document.createElement('li');
el.classList.add('res');
el.textContent = res.text;
// Pass the value to the onSelect callback
el.addEventListener('click', () =>
const onSelect = this.options;
if (typeof onSelect === 'function') onSelect(result.value);
);
// This is where I'm attempting to create KeyDown
el.addEventListener('keydown', () =>
const onSelect = this.options;
if (typeof onSelect === 'function') onSelect(result.value);
);
fragment.appendChild(el);
);
return fragment;
And this is my index.js
function getAPI(api)
fetch(api)
.then((res) => return res.json() )
.then(function(data)
let arr = data.map(user => (
text: user.login,
value: user.id,
));
window.data = arr;
)
.then(function()
new Autocomplete(document.getElementById('guser'),
data,
onSelect: (UserId) =>
console.log('selected github user id:', UserId);
,
);
)
.catch(error => console.error(error))
;
And lastly my index.html where it is rendered:
<div class="users-group form-group">
<label>Github User:</label>
<div id="guser"></div>
</div>
<script src='./index.js'></script>
Right now I'm able to click on an item from my results list and it will console.log as per my onSelect for the click eventListener. However the keyboard portion doesn't work and I'm not quite sure about what changes to make.
javascript
add a comment |
I'm trying to create a way to use keyboard to sort through a results list from an API call. I've got the search portion working, just can't figure out how to create the eventlistener.
This is my autocomp.js
export default class Autocomp {
constructor(rootEl, options = )
this.rootEl = rootEl;
this.options =
numRes: 10,
data: [],
...options,
;
this.init();
createResEl(res)
const fragment = document.createDocumentFragment();
res.forEach((res) =>
const el = document.createElement('li');
el.classList.add('res');
el.textContent = res.text;
// Pass the value to the onSelect callback
el.addEventListener('click', () =>
const onSelect = this.options;
if (typeof onSelect === 'function') onSelect(result.value);
);
// This is where I'm attempting to create KeyDown
el.addEventListener('keydown', () =>
const onSelect = this.options;
if (typeof onSelect === 'function') onSelect(result.value);
);
fragment.appendChild(el);
);
return fragment;
And this is my index.js
function getAPI(api)
fetch(api)
.then((res) => return res.json() )
.then(function(data)
let arr = data.map(user => (
text: user.login,
value: user.id,
));
window.data = arr;
)
.then(function()
new Autocomplete(document.getElementById('guser'),
data,
onSelect: (UserId) =>
console.log('selected github user id:', UserId);
,
);
)
.catch(error => console.error(error))
;
And lastly my index.html where it is rendered:
<div class="users-group form-group">
<label>Github User:</label>
<div id="guser"></div>
</div>
<script src='./index.js'></script>
Right now I'm able to click on an item from my results list and it will console.log as per my onSelect for the click eventListener. However the keyboard portion doesn't work and I'm not quite sure about what changes to make.
javascript
I'm trying to create a way to use keyboard to sort through a results list from an API call. I've got the search portion working, just can't figure out how to create the eventlistener.
This is my autocomp.js
export default class Autocomp {
constructor(rootEl, options = )
this.rootEl = rootEl;
this.options =
numRes: 10,
data: [],
...options,
;
this.init();
createResEl(res)
const fragment = document.createDocumentFragment();
res.forEach((res) =>
const el = document.createElement('li');
el.classList.add('res');
el.textContent = res.text;
// Pass the value to the onSelect callback
el.addEventListener('click', () =>
const onSelect = this.options;
if (typeof onSelect === 'function') onSelect(result.value);
);
// This is where I'm attempting to create KeyDown
el.addEventListener('keydown', () =>
const onSelect = this.options;
if (typeof onSelect === 'function') onSelect(result.value);
);
fragment.appendChild(el);
);
return fragment;
And this is my index.js
function getAPI(api)
fetch(api)
.then((res) => return res.json() )
.then(function(data)
let arr = data.map(user => (
text: user.login,
value: user.id,
));
window.data = arr;
)
.then(function()
new Autocomplete(document.getElementById('guser'),
data,
onSelect: (UserId) =>
console.log('selected github user id:', UserId);
,
);
)
.catch(error => console.error(error))
;
And lastly my index.html where it is rendered:
<div class="users-group form-group">
<label>Github User:</label>
<div id="guser"></div>
</div>
<script src='./index.js'></script>
Right now I'm able to click on an item from my results list and it will console.log as per my onSelect for the click eventListener. However the keyboard portion doesn't work and I'm not quite sure about what changes to make.
javascript
javascript
edited Mar 23 at 18:49
Sachin
asked Mar 23 at 17:38
SachinSachin
124
124
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
The 'type' parameter for your EventListener is not correct. You were trying to implement the keydown event:
// This is where I'm attempting to create onKeyDown
el.addEventListener('keydown', () =>
const onSelect = this.options;
if (typeof onSelect === 'function') onSelect(result.value);
);
All 'type' parameters are case-sensitive.
The correct syntax for the onkeydown
property (which is also case-sensitive) is:
target.onkeydown = functionRef;
Sorry I'm pretty new to javascript, I've tried 'onkeydown' instead of 'keydown, without it working. Is that what you meant?
– Sachin
Mar 23 at 18:20
Your original code readsel.addEventListener('onKeyDown', cb)
, change that intoel.addEventListener('keydown', cb)
. TheonKeyDown
type parameter for this method does not exist.
– hotpink
Mar 23 at 18:39
Ah ok, I've updated my original question
– Sachin
Mar 23 at 18:50
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55316562%2fcreate-keydown-or-keypress-event-with-enter-for-select-to-navigate-through-resul%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
The 'type' parameter for your EventListener is not correct. You were trying to implement the keydown event:
// This is where I'm attempting to create onKeyDown
el.addEventListener('keydown', () =>
const onSelect = this.options;
if (typeof onSelect === 'function') onSelect(result.value);
);
All 'type' parameters are case-sensitive.
The correct syntax for the onkeydown
property (which is also case-sensitive) is:
target.onkeydown = functionRef;
Sorry I'm pretty new to javascript, I've tried 'onkeydown' instead of 'keydown, without it working. Is that what you meant?
– Sachin
Mar 23 at 18:20
Your original code readsel.addEventListener('onKeyDown', cb)
, change that intoel.addEventListener('keydown', cb)
. TheonKeyDown
type parameter for this method does not exist.
– hotpink
Mar 23 at 18:39
Ah ok, I've updated my original question
– Sachin
Mar 23 at 18:50
add a comment |
The 'type' parameter for your EventListener is not correct. You were trying to implement the keydown event:
// This is where I'm attempting to create onKeyDown
el.addEventListener('keydown', () =>
const onSelect = this.options;
if (typeof onSelect === 'function') onSelect(result.value);
);
All 'type' parameters are case-sensitive.
The correct syntax for the onkeydown
property (which is also case-sensitive) is:
target.onkeydown = functionRef;
Sorry I'm pretty new to javascript, I've tried 'onkeydown' instead of 'keydown, without it working. Is that what you meant?
– Sachin
Mar 23 at 18:20
Your original code readsel.addEventListener('onKeyDown', cb)
, change that intoel.addEventListener('keydown', cb)
. TheonKeyDown
type parameter for this method does not exist.
– hotpink
Mar 23 at 18:39
Ah ok, I've updated my original question
– Sachin
Mar 23 at 18:50
add a comment |
The 'type' parameter for your EventListener is not correct. You were trying to implement the keydown event:
// This is where I'm attempting to create onKeyDown
el.addEventListener('keydown', () =>
const onSelect = this.options;
if (typeof onSelect === 'function') onSelect(result.value);
);
All 'type' parameters are case-sensitive.
The correct syntax for the onkeydown
property (which is also case-sensitive) is:
target.onkeydown = functionRef;
The 'type' parameter for your EventListener is not correct. You were trying to implement the keydown event:
// This is where I'm attempting to create onKeyDown
el.addEventListener('keydown', () =>
const onSelect = this.options;
if (typeof onSelect === 'function') onSelect(result.value);
);
All 'type' parameters are case-sensitive.
The correct syntax for the onkeydown
property (which is also case-sensitive) is:
target.onkeydown = functionRef;
answered Mar 23 at 18:10
hotpinkhotpink
412
412
Sorry I'm pretty new to javascript, I've tried 'onkeydown' instead of 'keydown, without it working. Is that what you meant?
– Sachin
Mar 23 at 18:20
Your original code readsel.addEventListener('onKeyDown', cb)
, change that intoel.addEventListener('keydown', cb)
. TheonKeyDown
type parameter for this method does not exist.
– hotpink
Mar 23 at 18:39
Ah ok, I've updated my original question
– Sachin
Mar 23 at 18:50
add a comment |
Sorry I'm pretty new to javascript, I've tried 'onkeydown' instead of 'keydown, without it working. Is that what you meant?
– Sachin
Mar 23 at 18:20
Your original code readsel.addEventListener('onKeyDown', cb)
, change that intoel.addEventListener('keydown', cb)
. TheonKeyDown
type parameter for this method does not exist.
– hotpink
Mar 23 at 18:39
Ah ok, I've updated my original question
– Sachin
Mar 23 at 18:50
Sorry I'm pretty new to javascript, I've tried 'onkeydown' instead of 'keydown, without it working. Is that what you meant?
– Sachin
Mar 23 at 18:20
Sorry I'm pretty new to javascript, I've tried 'onkeydown' instead of 'keydown, without it working. Is that what you meant?
– Sachin
Mar 23 at 18:20
Your original code reads
el.addEventListener('onKeyDown', cb)
, change that into el.addEventListener('keydown', cb)
. The onKeyDown
type parameter for this method does not exist.– hotpink
Mar 23 at 18:39
Your original code reads
el.addEventListener('onKeyDown', cb)
, change that into el.addEventListener('keydown', cb)
. The onKeyDown
type parameter for this method does not exist.– hotpink
Mar 23 at 18:39
Ah ok, I've updated my original question
– Sachin
Mar 23 at 18:50
Ah ok, I've updated my original question
– Sachin
Mar 23 at 18:50
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55316562%2fcreate-keydown-or-keypress-event-with-enter-for-select-to-navigate-through-resul%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown