Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/86.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
Javascript 如何在html中将字符串转换为数字?以及如何将变量传递到scriptlet代码中?_Javascript_Html_Jsp_Type Conversion - Fatal编程技术网

Javascript 如何在html中将字符串转换为数字?以及如何将变量传递到scriptlet代码中?

Javascript 如何在html中将字符串转换为数字?以及如何将变量传递到scriptlet代码中?,javascript,html,jsp,type-conversion,Javascript,Html,Jsp,Type Conversion,如何在HTML中将字符串转换为数字?我想将输入值转换成一个数字,并将其传递到脚本代码中。按下按钮应进行此转换并传递变量 输入一个数字: 函数getInput(x){ var输入=x; 警报(输入); } 用于将字符串转换为数字: <input type="button" id="change-btn" value="Change" onclick="getInput()"> 将其传递到scriptlet代码中 这是不可能的。因为scriplet已在服务器中编译并发送到客户端。不能将

如何在HTML中将字符串转换为数字?我想将输入值转换成一个数字,并将其传递到脚本代码中。按下按钮应进行此转换并传递变量

输入一个数字:
函数getInput(x){
var输入=x;
警报(输入);
}

用于将字符串转换为数字:

<input type="button" id="change-btn" value="Change" onclick="getInput()">
将其传递到scriptlet代码中

这是不可能的。因为scriplet已在服务器中编译并发送到客户端。不能将值赋回scriplet。
否则,您需要向servlet发出ajax请求以将数据发送到服务器。否则,将表单提交以将数据发送到servlet,并使用requestDispatcher重定向到具有填充表的同一页面。

JavaScript中设置的变量与JSP中Java scriptlet代码中设置的变量之间没有链接(当然可以,但不是以您尝试的方式)。如果要使用scriptlet代码根据输入的数字显示表行,则必须添加表单并将其发回页面。您还需要向文本字段添加名称值。然后使用request.getParameter(“文本字段的名称”)获取他们输入的值,并用该值替换
**X**
。您可能还想进行@mohamedrias建议的更改。

X从何而来?不要忘记,当输入发生在客户端时,您的循环是在服务器端执行的……我们是否可以从客户端请求值,然后在服务器端使用它?您需要向servlet发出ajax请求,以便将数据发送到服务器。否则,制作一个表单提交,将数据发送到servlet,并使用requestDispatcher重定向到具有填充表的同一页面。服务器将呈现所需的表,客户端将用新的HTML替换旧的HTML(从服务器接收)。若你们只需要呈现你们的示例表,你们甚至可以在客户端做所有的事情……太好了。明白了。试过之后我会给你们回复的。谢谢你抽出时间。
function getInput(){
    var input = document.getElementById("number").value;
    // conversion from string to integer
    if(isNaN(input)) return 0; // value is not a number
    var value = parseInt(input);
}