灰显HTML表单元素

时间:2011-11-11 06:59:39

标签: php mysql html

我想让用户选择一个“行”来提交with以请求报告类型。如何将单选按钮放在表格的第一列中,选择哪一个是通过提交按钮发送到下一页的活动行?

2 个答案:

答案 0 :(得分:4)

我认为安德烈斯走在正确的轨道上,但它并没有那么有用。这应该更好一点:

<?php 
blah ...

echo <<<HTML
    <form action="handler.php" action="post">
        <table>
HTML;

foreach ($rows as $row)
{
    $id = $row['id'];
    $text = $row['text'];  // escape this unless you know it's safe

    echo <<<HTML
        <tr>
            <td><input type="radio" value="$id" name="theRadioButton" /></td>
            <td><input type="text" name="textfield_$id" value="$text" /></td>
        </tr>
HTML;
}

echo <<<HTML
    </table>
</form>
HTML;

表单处理程序:

<?php 
    $id = isset($_POST['theRadioButton']) ? $_POST['theRadioButton'] : null;

    if ($id)
    {
        $textfield = $_POST["textfield_$id"];
    }
?>

答案 1 :(得分:0)

如果你想用纯PHP做,我想你可以这样做:

<form action="ascript.php" action="post">
    <table>
        <tr>
            <td><input type="radio" value="row1" name="theRadioButton" /></td>
            <td><input type="text" name="row1textfield" /></td>
        </tr>
        <tr>
            <td><input type="radio" value="row2" name="theRadioButton" /></td>
            <td><input type="text" name="row2textfield" /></td>
        </tr>
        <tr>
            <td><input type="radio" value="row3" name="theRadioButton" /></td>
            <td><input type="text" name="row3textfield" /></td>
        </tr>
    </table>
</form>

ascript.php

<?php 
    if ($_POST['theRadioButton'] == "row1") {
        echo $_POST['row1textfield'];
        // Handle row 1 ..
    }
    else if ($_POST['theRadioButton'] == "row2") {
        echo $_POST['row2textfield'];
        // Handle row 2 ..
    }
    else if ($_POST['theRadioButton'] == "row3") { 
        echo $_POST['row3textfield'];
        // Handle row 3 ..
    }
?>

但是,如果你愿意使用一些jQuery,你可以将文本字段命名为相同的东西并禁用你不会使用的字段。这是一个小提琴:http://jsfiddle.net/rrvQu/1/