Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在JSP的java代码中使用Javascript变量作为参数?_Java_Javascript_Jsp - Fatal编程技术网

如何在JSP的java代码中使用Javascript变量作为参数?

如何在JSP的java代码中使用Javascript变量作为参数?,java,javascript,jsp,Java,Javascript,Jsp,我想将代码标题和价格作为参数发送给book对象,但给出了非法的开始表达式错误 function addrecord() { code = document.getElementById('code').value; title = document.getElementById('title').value; price = parseFloat(document.getElementById('price').value);

我想将代码标题和价格作为参数发送给book对象,但给出了非法的开始表达式错误

 function addrecord() {
    code = document.getElementById('code').value;
            title = document.getElementById('title').value;
            price = parseFloat(document.getElementById('price').value);

    <%   Book book = new Book(%> code <% ,%> title <% , %> price <% );
   bookdb.addRecord(book);   
             %>
            document.getElementById("code").value = "";
            document.getElementById("title").value = "";
            document.getElementById("price").value = "";
    }
函数addrecord(){
代码=document.getElementById('code')。值;
title=document.getElementById('title')。值;
price=parseFloat(document.getElementById('price').value);
代码标题价格
document.getElementById(“代码”).value=“”;
document.getElementById(“title”).value=“”;
document.getElementById(“价格”).value=“”;
}
参见此处:

正如上面所说的,JSP在服务器上执行,javascript稍后在浏览器中执行,这实际上是不可能的。

请参见此处:


如前所述,JSP在服务器上执行,javascript稍后在浏览器中执行,这是不可能的。

您误解了java和javascript的运行位置。 您可以使用,就好像它将值发送到服务器,而服务器不发送值一样。这些标记仅在jsp内部用于启动java代码片段。这仅在生成页面时有效。一旦html出现在浏览器中,这些标记将不会起任何作用

突出重要的关键词,这不是故意的讽刺

当您使用浏览器请求jsp页面时,浏览器打开到服务器的网络连接。把这两个(浏览器、服务器)想象成生活在两个完全不同的地方

然后服务器运行java代码。当它执行时,会生成一个html页面。 此html页面通过网络连接发送回客户端(您的浏览器

您的浏览器将接收此完整格式的html页面,并使用它创建其视图。在此页面上,您可以运行javascript,但javascript将仅在客户端(浏览器)上运行

要再次将任何变量返回到服务器,您需要:获取或发布表单(在表单中使用提交,或使用),执行ajax调用()或让用户单击链接(a href=“…您的页面”)

最简单的方法是:

<form method="POST" action="your/page/url">
    <input type="hidden" name="someName" value="someValue" />
    <input type="submit" />
</form>


阅读一些链接,确保您记住,您的浏览器和服务器是分开的,因此在浏览器中运行javascript不会到达服务器。

您误解了java和javascript的运行位置。 您可以使用,就好像它将值发送到服务器,而服务器不发送值一样。这些标记仅在jsp内部用于启动java代码片段。这仅在生成页面时有效。一旦html出现在浏览器中,这些标记将不会起任何作用

突出重要的关键词,这不是故意的讽刺

当您使用浏览器请求jsp页面时,浏览器打开到服务器的网络连接。把这两个(浏览器、服务器)想象成生活在两个完全不同的地方

然后服务器运行java代码。当它执行时,会生成一个html页面。 此html页面通过网络连接发送回客户端(您的浏览器

您的浏览器将接收此完整格式的html页面,并使用它创建其视图。在此页面上,您可以运行javascript,但javascript将仅在客户端(浏览器)上运行

要再次将任何变量返回到服务器,您需要:获取或发布表单(在表单中使用提交,或使用),执行ajax调用()或让用户单击链接(a href=“…您的页面”)

最简单的方法是:

<form method="POST" action="your/page/url">
    <input type="hidden" name="someName" value="someValue" />
    <input type="submit" />
</form>


阅读一些链接,确保您记住,您的浏览器和服务器是分开的,因此在浏览器中运行javascript不会到达服务器。

请告诉我们您尝试了什么以及您的具体问题是什么。请告诉我们您尝试了什么以及您的具体问题是什么。哈,为什么投反对票?哈,为什么投反对票?