Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/366.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函数_Javascript_Php_Popupwindow - Fatal编程技术网

从表列调用javascript函数

从表列调用javascript函数,javascript,php,popupwindow,Javascript,Php,Popupwindow,我在一行中的一列中有一个表,我使用带有“编辑”的超链接 在这里我调用一个javascript函数(启动一个弹出窗口) 这是我的一排桌子 echo "<tr>"; echo '<td>' . $row['id'] . '</td>'; echo '<td>' . $row['firstname'] . '</td>'; echo '<td>' . $row['lastname'] . '<

我在一行中的一列中有一个表,我使用带有“编辑”的超链接 在这里我调用一个javascript函数(启动一个弹出窗口)

这是我的一排桌子

    echo "<tr>";
    echo '<td>' . $row['id'] . '</td>';
    echo '<td>' . $row['firstname'] . '</td>';
    echo '<td>' . $row['lastname'] . '</td>';

    echo '<td>'  .
    '<a href=\"javascript:popup_window_show('#sample', { pos : 'window-center', width : '270px' });'>Edit</a>
    . '</td>';

    echo '<td><a href=\"javascript:popup_window_show('#sample', { pos : 'window-center', width : '270px' });'>Edit</a></td>';
以及如何将行数据传递给js函数(比如firstname)

我在创建了一个JSBin,它演示了如何将行作为参数传递给函数

此外,还不清楚obj引用是指什么,因此我在JSBin中对此进行了评论,并对如何调试函数和查看发生了什么进行了评论

我在JSBin中使用jQuery将行作为参数传递,因为看起来您也在使用它获取文档上的滚动位置

JSBin在浏览器控制台中显示输出。如果您需要对代码进行更多调整,只需向我提供一些您想要实现的清晰想法,我就可以修改代码来演示如何实现您想要的

更新以添加PHP echo

echo "<tr>";
echo '<td>' . $row['id'] . '</td>';
echo '<td>' . $row['firstname'] . '</td>';
echo '<td>' . $row['lastname'] . '</td>';
echo '<td><a href="#" onclick="javascript:popup_window_show('#sample', { pos: 'window-center', width: '270px', row: $(this).parents('tr') });">Edit</a></td>';
echo "</tr>";

function popup_window_show(selector, args)
{
   var pos = args.pos ? args.pos : null;
   if (pos == 'window-center') 
   { 
     x += $(document).scrollLeft()+($(window).width()-obj.width())*1/2; 
     y += $(document).scrollTop()+($(window).height()-obj.height())*1/2; 
   }

   var row = args.row;
}
echo”“;
回显“”$行['id'].';
回显“”$行['firstname'].';
回显“”$行['lastname'].';
回声';
回声“;
功能弹出窗口显示(选择器、参数)
{
var pos=args.pos?args.pos:null;
如果(位置==“窗口中心”)
{ 
x+=$(文档).scrollLeft()+($(窗口).width()-obj.width())*1/2;
y++=$(文档).scrollTop()+($(窗口).height()-obj.height())*1/2;
}
var行=args.row;
}
“还有”?你问的第一件事是什么?什么不起作用,你被困在哪里?如果你在单引号中使用双引号(
”),你不必像这样
转义它们。
echo "<tr>";
echo '<td>' . $row['id'] . '</td>';
echo '<td>' . $row['firstname'] . '</td>';
echo '<td>' . $row['lastname'] . '</td>';
echo '<td><a href="#" onclick="javascript:popup_window_show('#sample', { pos: 'window-center', width: '270px', row: $(this).parents('tr') });">Edit</a></td>';
echo "</tr>";

function popup_window_show(selector, args)
{
   var pos = args.pos ? args.pos : null;
   if (pos == 'window-center') 
   { 
     x += $(document).scrollLeft()+($(window).width()-obj.width())*1/2; 
     y += $(document).scrollTop()+($(window).height()-obj.height())*1/2; 
   }

   var row = args.row;
}