2017-02-14 3 views
0

Le code d'erreur est "0x80020101" et ne spécifie pas une partie du code qui a un problème. Ce qui me dérange vraiment, c'est que l'exécution du script via la console ne génère aucune erreur. Le code ressemble à ceci:L'exécution de JS ou JQ à l'aide d'execScript génère toujours une erreur de syntaxe dans mshtml

int index = element_td.cellIndex; 
var scriptBody = 
"function myFunc() {" + 
"var row = document.querySelectorAll('#QueryModel_Provider_ProviderDropdownTable tbody tr')[" + index + "]; " + 
"console.log(row);" + 
"var clickEvent = document.createEvent('MouseEvents'); " + 
"clickEvent.initEvent('mousedown', true, true); " + 
"row.dispatchEvent(clickEvent);" + 
"};" + 
"myFunc();"; 
doc1.parentWindow.execScript(scriptBody); 

Il semble penser qu'il ya un problème avec la ligne: row.dispatchEvent(clickEvent); mais je ne vois rien de mal avec elle. Je sais que je peux le faire en une seule ligne en utilisant JQ, mais je recevais cette erreur en faisant cela aussi bien, d'où l'approche JS brute. (Cependant, je n'ai pas essayé d'utiliser le bloc de code dans une fonction, il a simplement refusé de reconnaître le $ en premier lieu)

Je peux tout mettre en ligne, mais la lisibilité du code est plus important maintenant.

Répondre