I have a browser-based search utility with many .php files and many forms. My users select their query parameters from list boxes and submit the form; a new php page comes up that displays their results.
I've been asked to give my users the option of opening their 'results' page in a new tab in their browser, but my solution isn't really reliable; sometimes it works but sometimes it doesn't. I'm hoping someone can steer me toward a better approach.
I'm using the onkeydown, onkeyup, and onmouseover events to fire javascript functions. In the Body tags of my HTML, I put this:
function pageDifferent(pressedKey, formName) {
if (pressedKey.keyCode == 18) {
document.forms[formName].target='_blank';
}
}
function pageSame(formName) {
document.forms[formName].target='_self';
}
This works fine about 70% percent of the time, but the rest of the time my users' search results open in the same window. If I remove the 'onmouseover' part, it works all the time - presumably my onmouseover is overriding my onkeydown if it senses a tiny movement. But I need the onmouseover part, or something equivalent, to reset to '_self', so that a new tab only opens while the key is pressed.
I've tried using anchor tags (CTRL key does what I want by default), but that gives me funky results. I've tried various combinations of onkeydown and onkeypress, but nothing I've come up with does what I want all the time.
Can anyone point me in a direction that will help? Thanks for any replies.
You can try this, I did it using javascript. Its a form that shows your results in a new window if you press the button and have Alt held down (key 18). Anyways, I am guessing this is what you were doing...
If your having problems with it working differently on different browsers then try jquery, it makes language syntax that can only be interpreted one way... For the most party that is.
Bookmarks