javascript - 将参数从表单发送到 JavaScript 中的函数
问题描述
我正在尝试将表单中的值发送到打开的新窗口。在我的程序中,窗口打开,val2
但未发送值,而是存在 null。
我的代码:
function eq(value) {
ViewImg = window.open('http://localhost/coord.php?' + value, 'ViewImg', 'width=<?php print $realWidthNewWindow; ?>,height=<?php print $realHeightNewWindow; ?>', 'status=no', 'titlebar=0');
}
<form id='testform_eq' name='testform_new'>
<input type='text' id='val2' name='val2'>
<input type='button' value='Submit' onclick='eq(document.getElementById(val2))'>
</form>
有谁知道为什么会这样?谢谢
解决方案
function eq() {
const value = document.getElementById('val2').value;
ViewImg = window.open('http://localhost/coord.php?' + value, 'ViewImg', 'width=<?php print $realWidthNewWindow; ?>,height=<?php print $realHeightNewWindow; ?>', 'status=no', 'titlebar=0');
}
<form id='testform_eq' name='testform_new'>
<input type='text' id='val2' name='val2'>
<input type='button' value="Submit" onclick='eq()'>
</form>
您无需向 click 函数传递任何内容。由于您的输入元素已经有一个 id 属性,因此您可以在单击它时获取输入的值。可能您想在其他地方使用该功能,这意味着您每次都必须通过该元素。
如果你真的想传递一些东西,你可以传递 id 本身。
eq('val2')
eq 函数看起来像这样:
function eq(id){
const value = document.getElementById(id).value;
....
}
比您可以在其他输入的其他地方使用该功能。
推荐阅读
- javascript - 套接字没有响应 FLASK
- php - Xdebug .so 文件存在但仍报未找到
- python - 与 HTML 页面上的大型 XLSX 文件交互?
- javascript - vue中如何设置条件规则和必填字段?
- java - 如何在 Java 中动态创建查询?
- sql - 每分钟的重叠量
- c++ - DEV C++ / 地图中的控制台 RPG
- django - 如何从 Django Rest Framework 嵌套序列化程序中的 ManyToMany 字段中删除对象?
- android - 从 EditText 获取 Double 值
- python - 模块化日志不会写入文件 - Python