2011-08-30 63 views
2
try{  
    var hdnPassenger = $("#ctl00_ContentPlaceHolder1_hdnPassenger").val(); 
    var newTr = $("#hdnCtl").html(); 
    newTr = newTr.replace(/_ID/g, hdnPassenger); 
} 
catch(ex){ 
    alert(ex); 
} 

上面的代碼是在Internet Explorer的做工精細替換字符串,但在Mozilla Firefox瀏覽器錯誤在Firefox中,同時使用正則表達式在JavaScript

InternalError該顯示以下錯誤:正則表達式太複雜

+0

它顯示什麼錯誤? –

+1

InternalError:正則表達式太複雜 –

+0

我想,下一步是找出'hdnPassenger'變量的值是什麼。 –

回答

0

有做了一些研究這個問題,有此錯誤的兩個可能的原因:

  1. 實際的正則表達式太複雜(不是你的情況,因爲你只需要/ _ID /)
  2. 你試圖做替換的字符串的長度(我不知道它是什麼,但可能很長)。似乎在某些版本的Firefox中有一些硬編碼的限制,但我不能擔保。

我建議你做兩本:添加hdnPassengernewTr變量的值 - 而在同一時間谷歌firefox regular expression too complex - 有大量的點擊。