单击数组中单个表单的Onclick按钮

时间:2016-07-20 15:32:49

标签: javascript php arrays forms onclick

我试图让一个按钮在php数据数组中显示一个隐藏的表单。它正在工作,除了我不能让它一次只打开一个表格。单击任何按钮时,将显示所有表单。我已经尝试使用变量作为类,然后函数停止一起工作。

function deptStaffOptions ($deptId, $company){
    $retVal = "";

    // Connect to the database by creating a new mysqli object
    include "DBconnect.php";
    $query = "
    SELECT
        s.staffId,
        s.fName,
        s.lName
    FROM staff AS s
    INNER JOIN agencies AS a ON a.company = s.company
    WHERE s.company = '$company' AND s.archive = 0 AND s.staffId NOT IN (
      SELECT staffId FROM deptAgts WHERE deptID = $deptId)
      ORDER BY s.fName";


    $retVal = $retVal . "<button class='work' id='dept". $deptId ."'>Please Work</button><form class='work' class='dept". $deptId ."' style='display: none;'><select>";


    if ($resultCD = $mysql->query($query)) {
        while ($aRow = $resultCD->fetch_assoc()) {

            $retVal = $retVal . "<option value='".$aRow['staffId']."'>". $aRow['fName'] . " " . $aRow['lName'] . "</option>";
        }
    }

    $retVal = $retVal . "</select></form>";
    return $retVal;

    $mysqli->close();

}

print deptStaffOptions($deptId, $company);

这是我正在使用的初始javascript:

<script>
    $( "button.work" ).click(function() {
        $( "form.work" ).show( "fold", 1000 );
    });
</script>

这样可以工作,但是当点击任何按钮时,所有表单都会打开。

在下面的那个中,id正在警报中找到,但后来我尝试用实际数据(不是自动生成)测试该类,并且它停止工作。

<script>
    $( "button" ).click(function() {
        var department = (this.id);
        alert(department);
        $( "form.dept23" ).show( "fold", 1000 );
    });
</script>

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

一个标签中不能有两个类属性。只需用空格拆分类。

$retVal = $retVal . "<button class='work' id='dept". $deptId ."'>Please Work</button><form class='work dept". $deptId ."' style='display: none;'><select>";

您可以使用以下方式动态选择:

<script>
    $( "button" ).click(function() {
        var department_id = (this.id);
        $( "form.dept" + department_id).show( "fold", 1000 );
    });
</script>