从Javascript运行Java方法

从Javascript运行Java方法,javascript,java,Javascript,Java,我正在尝试运行Java函数,它是来自Javascript的Android应用程序类的一个成员。我尝试运行的功能是: public static String printName(){ return("Hello World!"); } 我调用此方法的javascript代码是: <!DOCTYPE html> <html> <body> <h2>Example Webpage</h2> <p id="

我正在尝试运行Java函数,它是来自Javascript的Android应用程序类的一个成员。我尝试运行的功能是:

public static String printName(){
        return("Hello World!");
    }
我调用此方法的javascript代码是:

<!DOCTYPE html>
<html>
<body>

<h2>Example Webpage</h2>

<p id="demo"></p>

<script>
    function foo(){
        var name = Packages.com.example.joey.myproject.MainActivity.printName();
        return name;
    }
document.getElementById("demo").innerHTML = foo();
</script>

</body>
</html>

示例网页

函数foo(){ var name=Packages.com.example.joey.myproject.MainActivity.printName(); 返回名称; } document.getElementById(“demo”).innerHTML=foo();

当我在web服务器上运行这段代码时,什么都没有发生。像header这样的HTML部分工作正常,但Javascript部分没有运行。我读了这篇()文章,但现在还不能运行JSP文件。请帮助我学习Javascript。

您的问题已经给出了答案

由于JavaScript是在客户端使用的,要做到这一点,您需要使用基本的AJAX查询
您还可以使用basicJSP来实现这一点。

您到底是如何运行这段预期Android功能的代码的?您是否将其托管在某个web服务器上,并通过Android设备上的浏览器进行访问?您是否将其托管在Android设备上的web服务器上,并通过该设备上的浏览器进行访问?您是否在某个Android应用程序的上下文中托管此应用程序,并从该应用程序的其他地方访问它?还有别的吗?请澄清为什么你认为这应该有效,以及你认为它应该做什么。“什么都没有发生”?甚至没有在控制台中抛出并显示错误“
ReferenceError
未定义”?使用(点击
F12
)并读取任何错误。@David感谢您的回复。我在安卓手机上运行网络服务器,是的,我正在从手机的网络访问browser@xufox我得到了这个错误:ReferenceError:包不是defined@eternal_peace:“我在我的Android手机上运行一个web服务器”-然后你有两个应用程序。一个是web服务器应用程序,另一个是浏览器中的JavaScript。服务器端应用程序(很可能使用JSP,尽管我认为还有其他选项)将包含此功能并根据需要公开(可能通过AJAX操作)。浏览器中的应用程序将调用AJAX操作。除了JSP和AJAX还有其他方法吗?我找不到其他方法。访问链接以获取更多帮助