Pank
Pank

Reputation: 14268

Capitalize first letter in dropdown

I seen a lot of post with regard to first letter capitalization using MySQL and stored procedure. I tried them all but none are working for me. Below is my code which I tried..

PlansController.php

$companies = $this->Plan->Company->find('list', array('conditions' =>   array('Company.status' => 'active'), 'fields' => array('Company.id','CONCAT(UCASE(LEFT(Company.name, 1)),SUBSTRING(Company.name, 2)) as name'))); //Getting Empty Dropdown

$companies = $this->Plan->Company->find('list', array('conditions' => array('Company.status' => 'active'), 'fields' => array('Company.id', 'UCASE(Company.name)')));  //Getting Empty Dropdown

$companies = $this->Plan->Company->find('list', array('conditions' => array('Company.status' => 'active'), 'fields' => array('Company.id', 'Company.name')));  //Getting Dropdown in view

View

<select name="data[Plan][company_id]" class="" id="PlanCompanyId">
<option value="">Please Select</option>
<option value="2">xyz abc</option>
<option value="1">lmd abc</option>
<option value="13">Abc ey</option>
<option value="12">sys abc</option>
</select>

Expecting output:

<select name="data[Plan][company_id]" class="" id="PlanCompanyId">
    <option value="">Please Select</option>
    <option value="2">Xyz Abc</option>
    <option value="1">Lmd Abc</option>
    <option value="13">Abc Ey</option>
    <option value="12">Sys Abc</option>
    </select>

How can I capitalize the first letter of the dropdown?

Upvotes: 3

Views: 1479

Answers (1)

Dave
Dave

Reputation: 29131

Solution 1: Use CSS:

text-transform: capitalize;

Solution 2: Virtual Field:

CakePHP's virtual fields (per mark's comment). Basically, you create a virtual field that has any type of MySQL formatting/concatenating...etc and call it 'full_name' or something. Then use IT for your drop-down instead of the normal 'name'.

Upvotes: 6

Related Questions