我通常使用输入类型提交,例如:<input type=“submit” name=“assign” value=“Assign”/>
使用这个对我来说没有问题,但现在我想使用按钮,例如:<button type=“button” class=“button” id=“deleteb”><div>Assign Student</div></button>
但不知道如何使用它或将其称为我的控制器。
这是我的控制器功能
if($assign_student)//<input type="submit" name="assign" value="Assign"/>
{
if($maxMember->max_members > $countMember)
{
if($countMember+1 == 1)
{
$is_leader = 1;
}
else
{
$is_leader = $this->input->post('is_leader');
}
$student = array(
'user_id' => $this->input->post('student'),
'group_no' => $this->input->post('group'),
'is_leader' => $is_leader
);
$this->admin_db->save_group($student['group_no'],$student);
}
else
{
$data['max_error'] = "<p class='error'>Sorry, This group reached the maximum number of members!</p>";
}
}
答案 0 :(得分:1)
如果您希望按钮提交表单,则必须type="submit"
如果您希望按钮发送值,最好使用隐藏输入来发送其他信息。例如:
<input type="hidden" name="assign" value="Assign" />
您可以为<button>
设置名称和值,但猜猜是什么?:在IE6中,实际的 html内容 将作为发布数据发送。这是我最喜欢的错误之一。
为什么发布控制器代码并不是很清楚,但如果您在处理前检查“触发器”值,例如$this->input->post('assign')
,则可以检查是否存在任何其他表单值,或者任何 $_POST
值的存在,或者正如我所提到的:隐藏的输入。
答案 1 :(得分:0)
如果按下提交按钮,则表示您正在向某些人发布表单 脚本,在本例中为PHP。
如果您提交表单,您的浏览器会发送信息 包含在接收脚本的表单中。
例如,如果您创建的页面包含以下内容:
你可以这样检查......
if (isset($_POST["deleteb"]))
{
//Do stuffs
}