JavaScript no funciona con Android WebView, Uncaught ReferenceError

Estoy intentando cargar una aplicación web en Android con WebView y el JavaScript de mis archivos html no se está ejecutando correctamente.

Creo la vista web y cargo la página de inicio de esta manera:

web = new WebView(this); web.getSettings().setJavaScriptEnabled(true); web.getSettings().setDomStorageEnabled(true); JavaScriptInterface jsInterface = new JavaScriptInterface(web, this); web.setWebChromeClient(new WebChromeClient()); web.addJavascriptInterface(jsInterface, "JSInterface"); web.loadUrl("file:///android_asset/web/home.html"); 

Una vez cargada la página de inicio, hago clic en un enlace a otra página local, register.html, donde tengo una función de JavaScript en la cabecera.

  function doRegister() { var user = document.getElementById("username").value; var email = document.getElementById("email").value; var pass = document.getElementById("password").value; var confPass = document.getElementById("confirmPassword").value; var message = ""; if (user.length  16) { message = message + "Username must be between 6 and 16 characters.
"; } if (pass.length 16) { message = message + "Password must be between 8 and 16 characters.
"; } if (pass !== confPass) { message = message + "Password and confirm password do not match.
"; } if (email.indexOf("@") === -1) { message = message + "Email address is invalid.
"; } if (message === "") { message = JSInterface.register(user, email, pass); if (message === "") { window.location.href = "home.html"; } } document.getElementById("message").style.color="red"; document.getElementById("message").innerHTML=message; }

Esta función es llamada por un botón onclick como así

  

Parece que cuando se hace clic en el botón está intentando llamar a doRegister () en home.html. Cuando hago clic en el botón, obtengo Uncaught ReferenceError: doRegister is not defined at file:///android_asset/web/home.html:1

Para confirmar esto, agregué una función de JavaScript a home.html que solo muestra una alerta y esto efectivamente se ejecutó cuando hice clic en el botón en register.html

Cualquier ayuda en este problema sería muy apreciada. Gracias.

Actualización: Olvidé mencionar, el JavaScript se ejecuta bien en el navegador web Eclipse, así como en Firefox. Aquí está mi home.html

    Home       function doSubmit() { alert("test"); }       

Básicamente, webview no puede encontrar la función doRegister (), seno que se encuentra en una página html diferente register.html, que no está cargada. Prueba esto
1. Mueva la parte js en register.html a algún archivo .js, digamos func.js
2. Luego refiérase a func.js desde su home.html como

  

3. una vez que se haya cargado la página, haga clic en el botón para llamar a doRegister ()