回复中的PHP提交按钮可以做一点javascripting

时间:2014-01-29 22:16:52

标签: javascript php html button

我目前有一个脚本可以在db中输出某些值,并且它按预期工作。但是现在,我正在尝试添加一个带按钮的列。 db吐出的每一行,我都需要一个可以打开的按钮运行javascript函数,然后打开一个窗口。这在HTML中很好用,但因为它在PHP和#echo中不起作用。它必须用我的引号做一些事情,但我似乎无法弄明白。有人知道如何在回声中嵌入一个按钮,也可以做javascript吗? 仅供参考 - 我希望按钮位于回声内,所以如果有10行,则会显示10个按钮。谢谢!

while($row = odbc_fetch_array($rs)) 
{

echo '
    <tr>
    <td class="td" valign="top">
    <input type="submit" name="SendEmailManually" value="Submit" onclick="window.open("index.php","newWin", "width=400,height=400")" /></td>
    <td class="td" valign="top">' . $Value1 . '</td>
    <td class="td" valign="top">' . $Value2 . '</td>
            <td class="td" valign="top">' . $Value3 . '</td>
            <td class="td" valign="top">' . $Value4 . '</td>
    </tr> 
';
}

3 个答案:

答案 0 :(得分:2)

请不要使用内联javascript,它很丑陋甚至更糟,所以当你需要转义引号以使它工作时。

function openIndex() {
    window.open("index.php","newWin", "width=400,height=400");
}

将窗口代码抛出到函数中,并为输入分配一个id(删除onclick属性)。

或者,如果不分配ID,请使用querySelector()

var x = document.querySelector("[name='SendEmailManually']");
x.addEventListener("click",openIndex,false);

添加您的事件监听器,突然您有一些漂亮的代码可以很好地处理委派事件。

答案 1 :(得分:1)

onclick属性中的嵌套引号是问题所在。在JavaScript中使用转义的单引号应该可以解决问题:

    <input type="submit" name="SendEmailManually" value="Submit" onclick="window.open(\'index.php\',\'newWin\', \'width=400,height=400\')" /></td>

答案 2 :(得分:0)

您使用的是双引号,它会干扰包含onclick属性值的双引号。请改用单引号。 "window.open('index.php','newWin', 'width=400,height=400')"