【发布时间】:2014-10-20 09:08:21
【问题描述】:
我无法在 form_dropdown 中获取文本,它总是返回选项值。请帮忙。
查看
<?php echo form_open_multipart('upload/do_upload');?>
<?php
$cont ='';
$dept='';
foreach($level->result() as $row) {
$cont = $row->userlevel;
$dept = $row->department;
}
if(strtoupper($cont)=="USER") {
echo "<strong>".$dept." </strong>";
}
else {
echo form_dropdown('department_name', $dept_name,'','id="department_name"');
}
?>
<br/><br/>
<div class="btn-group">
<span id="status2"><?php echo form_dropdown('document_name', $document_name, '', 'id="document_name"'); ?></span>
</div>
<br/><br/>
<label for="file">Select File To Upload:</label>
<input type="file" name="userfile" multiple class="btn btn-file"/>
</br></br>
<input type="submit" value="Upload File" class="btn btn-primary"/>
<?php echo form_close(); ?>
<script>
window.onload = function() {
var form_data = {
dept_name: "<?php echo $dept; ?>",
ajax: 1
};
$.ajax({
url:"<?php echo site_url("document/document_dept_received"); ?>",
data:form_data,
type:'POST',
success: function(msg){
document.getElementById("status2").innerHTML = msg;
}
});
};
$("#department_name").change(function() {
var form_data = {
dept_name: $("#department_name option:selected").text(),
ajax: 1
};
$.ajax({
url:"<?php echo site_url("document/document_dept_received"); ?>",
data:form_data,
type:'POST',
success: function(msg){
document.getElementById("status2").innerHTML = msg;
}
});
});
</script>
控制器
$upload_data = $this->upload->data();
$data['thumbnail_name'] = $upload_data['raw_name']. '_thumb' .$upload_data['file_ext'];
$file_array = array(
'image' => $data['thumbnail_name'],
'image_name' => $upload_data['file_name'],
//'description' => "",
'date_created' => date('Y-m-d H:i:s', now()),
'date_modified' => date('Y-m-d H:i:s', now()),
'author' => $this->session->userdata('username'),
'size' => $upload_data['file_size'],
'type' => $upload_data['image_type'],
'width' => $upload_data['image_width'],
'height' => $upload_data['image_height'],
'document_name' => $this->input->post("document_name"),
'department' => $this->input->post("department_name"),
//'notes' => "",
);
当我尝试这个时......
print_r($this->input->post("document_name"));
print_r($this->input->post("department_name"));
它显示 1 和 1...
我想要的是文本而不是选项的 id 或值。 示例:我选择了 IT 部门和文件夹 1,它将显示/记录 IT 部门和文件夹 1 到数据库。
【问题讨论】:
-
我试着检查一下。问题是我正在使用连接到数据库的 form_dropdown。
-
那么你需要将你的数组创建为键/值数组,并将键作为文本而不是整数。
-
但如果您想使用整数作为选项值,请参阅我评论的链接。这正是您想要的,即取出选定的选项文本,而不是选项值。
-
没有。我想要文本而不是整数。我之前尝试查看链接但没有工作。查看我的代码,我使用了 ajax jquery 并获得了文本,并且由于我使用的是 form_open_multipart,因此该脚本不能适用于获取文本值。
标签: javascript php html codeigniter