2012-08-28 22 views
1

我使用的表單包含「發送」按鈕和「刪除」按鈕。加載頁面時的Javascript按鈕「選中」

一旦頁面加載好像這個'刪除'按鈕是「選中」的 - 也就是說 - 它被藍色的線包裹着,當按下「enter」時,當這個按鈕被點擊時被調用的js函數是被解僱。

在Firefox和鉻它工作得很好,我可以做什麼,當頁面加載時,這個按鈕不會處於「選定」模式?

*刪除按鈕是第一個出現在頁面上的按鈕,我發現IE出於某種原因突出顯示了頁面中的第一個按鈕。我怎麼能禁用這個設置?

在此先感謝

+0

也許使用的jsfiddle展現你在做什麼? –

+0

jsfiddle在這種情況下沒有幫助,因爲它只與Internet Explorer有關,它突出顯示頁面中的第一個按鈕 – Itamar

+0

http://stackoverflow.com/questions/12082481/identifying-main-submit-button-for-aform – Gustonez

回答

0

嘗試附加給你的腳本:

(function(w) 
{ 
    if (w.attachEvent) 
    { 
     w.attachEvent('onload',function tmpLoad() 
     { 
      document.body.focus(); 
      //or document.getElementById('submitId').focus(); to focus submit btn 
      w.detachEvent('onload',tmpLoad);//detach listener, too 
     }); 
     return; 
    } 
    //if this issue occurs with IE > 8: 
    if (navigator.appName === 'Microsoft Internet Explorer') 
    { 
     w.addEventListener('load',function tmpLoad() 
     { 
      document.body.focus(); 
      w.removeEventListener('load',tmpLoad,false); 
     },false); 
    } 
})(this); 

這應該工作。雖然這不容易在小提琴中鍛鍊,here's one,在IE中測試,但沒有選擇按鈕。

0

試試這個:

<form> 
<input name="Delete_btn" type="button" onclick="$(this).parent('form').append('<input type=hidden name=Delete value=Delete />').submit();" value="Delete" id="Delete_btn" /> 
<input type="text" name="f1" id="f1" /> 
<input name="Submit" type="submit" value="Submit" id="Submit" /> 
​</form> 

http://fiddle.jshell.net/d8xWB/2/show/

+0

沒有jQuery標籤,(我認爲)不是問題的答案。 –

+0

是的沒有jQuery標籤,但他需要一個解決方案。他可能會發現你的答案很有用。但這不是IE唯一的問題,例如你的腳本不會在safari或其他瀏覽器上工作。 – Gustonez

+0

'因爲它只與網頁瀏覽器相關,它突出顯示頁面中的第一個按鈕< - 這是一個IE瀏覽器唯一的問題。我目前正在使用chrome和FF,不需要腳本。我的建議不會干擾任何其他代碼(它很好地包含在函數範圍內),並且只在IE瀏覽器上運行時才執行。 AFAIK的問題是,在IE的頁面加載中選擇了刪除按鈕,你的建議沒有解決這個問題 –

相關問題