JavaScript 将值传递到弹出页面
javascript pass value to popup page
本文关键字:值传 JavaScript 更新时间:2023-09-26
>我有一个包含 100 行的订单表。 对于其中的每一个,都有一个带有弹出窗口的按钮,用户可以在其中选择他们想要订购的产品。
我已经改编了我在网上找到的javscript,它按照下面的代码工作。 我的问题是我有 100 行,每个产品都有一个名称 SKU1、SKU2、SKU3...SKU4,SKU5。我不想创建 100 个 JavaScript 代码实例?
我正在寻找一种方法将输入字段 sku3 的值传递给弹出窗口,以便它知道要将值发送回哪个字段。
任何帮助将不胜感激。
我的主页代码是:(相关代码片段 - 真实文档中的 100 行)
<tr id="r1">
<td>
<input size=10 type=number id=sku1 name=sku1>
<img src=q.png border=0 onClick="window.open('popupselector.php','orderform','width=500,height=600');">
</td>
<td>
<input type="number" name="qty1" id="qty1">
</td>
</tr>
<tr id="r2">
<td>
<input size=10 type=number id=sku2 name=sku2>
<img src=q.png border=0 onClick="window.open('popupselector.php','orderform','width=500,height=600');">
</td>
<td>
<input type="number" name="qty2" id="qty2">
</td>
</tr>
<tr id="r3">
<td>
<input size=10 type=number id=sku3 name=sku3>
<img src=q.png border=0 onClick="window.open('popupselector.php','orderform','width=500,height=600');">
</td>
<td>
<input type="number" name="qty3" id="qty3">
</td>
</tr>
popupselector.php的javascript代码是:
<SCRIPT LANGUAGE="JavaScript">
function sendValue(s){
var selvalue = s.options[s.selectedIndex].value;
window.opener.document.orderform.sku1.value = selvalue;
window.close();
}
</script>
<form name=selectform>
<SELECT NAME=selectmenu size=30>
<?=$options?>
</SELECT>
<input type=button value="Select" onClick="sendValue(this.form.selectmenu);">
</form>
在javascript有sku1的地方,我希望它是一个变量,具体取决于用户单击的行:
window.opener.document.orderform.sku1.value = selvalue;
我不想将 sku1、sku2、sku3 硬编码到这些页面中,因为我需要 100 个弹出选择器.php页面。
感谢和问候,瑞安·史密斯
我认为您可以创建一个变量作为项目的id
,然后在循环中查询它们。
function sendValue(s){
for (var i = 1; i < 101; i++) {
var selvalue = s.options[s.selectedIndex].value;
var itemId = 'sku' + i;
var item = document.getElementById(itemId).value = selvalue;
}
window.close();
}
如果selvalue
在每个循环中都没有更改,则可以将其移出循环
更新以将 id 从表单发送到 JavaScript 弹出窗口 - -您可以使用 DOM 访问在 img 单击之前输入的 id:
function sendValue(s){
var inputField = s.previousSibling; // will be the space between <input> and <img>
if (inputField.nodeName != 'INPUT')
inputField = inputField.previousSibling; // will be the <input> node
// Here you can get id, name... attributes with: inputField.getAttribute('id'), inputField.getAttribute('name')
window.close();
}
有人想:如果表行是从PHP代码生成的,为什么不直接将id插入img标签并将其放回popupselector中呢.php
<img src=q.png border=0 onClick="window.open('popupselector.php?<?=$rowId ?>','orderform','width=500,height=600');">
相关文章:
- 如何将值传递给wicket中的javascript函数
- 使用Ajax将PHP值传递给javascript
- 将javascript值传递给PHP
- 将javascript值传递给php是正确的方法
- 在key up函数上将文本框值传递给javascript
- 多个单选按钮,需要将选定的值传递给javascript
- 将 MSSQL 表值传递给 javascript
- 我无法使用JSON将值从javascript传递给PHP脚本
- 如何将数据存储值传递给javascript?我需要从gae数据存储中获取数据,并需要传递javascript
- 将索引值传递给javascript命名空间数组
- 将文本框值传递给javascript函数
- 如何解决将值传递给javascript函数时的错误
- 将javascript返回值传递给MVC 4中的控制器
- 将参数值传递给javascript函数
- 无法将jsp值传递给javascript
- 在mvc4中将值从javascript传递给ajax
- 如何将客户端javascript返回值传递给ASP经典服务器端
- 如何将剃刀视图模态属性值传递给javascript函数
- 将字符串值传递给selenium中的Javascript Executor
- 将Javascript数组值传递给HTML