我正在使用表单助手库在ci视图中加载表单。我正在使用的脚本是
echo form_open('');
但是当我检查表单或查看页面源时,它已经设置了具有基本URL的action属性。我想在使用form_open('')方法时将action属性设置为空白。我怎样才能获得form_open()方法的这种行为。通常我们在使用ci标准时设置这样的动作
echo form_open('abc/login');
所以有办法将动作属性保持为空白。
答案 0 :(得分:1)
首先在窗体打开
的视图页面中加载视图<强> View.php 强>
// Open Form
<?php $this->load->view('your_directory_path/form_open'); ?>
其次在单独的文件中添加表单开放代码,以便它可以附加到视图文件中的任何位置。
<强> form_open.php 强>
<form method="post" id="XYZ_DEMO" name="XYZ_DEMO" enctype="multipart/form-data" class="ABC XYZ">
这样你就可以在codeigniter中使用form_open将action属性设置为空白。
答案 1 :(得分:0)
首先加载表单助手,以便使用form_open()
方法。
$this->load->helper('form');
或在application/config/autoload.php
中加载助手。
然后在视图中设置空白表单action
属性。喜欢这个..
<?php echo form_open('', array('id' =>'form_id', 'class'=>'form_class'); ?>
答案 2 :(得分:0)
空白操作指向当前页面,以便您可以使用
echo form_open(base_url());
答案 3 :(得分:0)
想要将action属性设置为空白,不确定要实现的目标。
如果你在form_helper中查看CI的 form_open 函数:
function form_open($action = '', $attributes = '', $hidden = array())
{
$CI =& get_instance();
if ($attributes == '')
{
$attributes = 'method="post"';
}
// If an action is not a full URL then turn it into one
if ($action && strpos($action, '://') === FALSE)
{
$action = $CI->config->site_url($action);
}
// If no action is provided then set to the current url
$action OR $action = $CI->config->site_url($CI->uri->uri_string());
$form = '<form action="'.$action.'"';
$form .= _attributes_to_string($attributes, TRUE);
$form .= '>';
/* MORE CODE */
}
你可以看到,如果没有设置$ action参数,它将被设置为当前的url。
// If no action is provided then set to the current url
$action OR $action = $CI->config->site_url($CI->uri->uri_string());
这可能是为什么当您将空参数传递给 form_open('')时,action属性仍然具有值。
如果你只是用html的方式会不会受伤?
<form action="" method="post" id="form_upload_submit">
如果你真的真的知道你想做什么,请继续编辑(我并不是真的建议这样做)位于system \ helpers \ form_helper.php中的form_helper.php中的form_open函数