मैं शीर्षक = "आइकन/icon_cart.gif" जोड़ना चाहता हूं, जो मेरी चयन सूची में निम्न विकल्पों में से प्रत्येक के लिए दृश्यों का उपयोग करके प्रस्तुत किया गया है।फॉर्म एपीआई का उपयोग करके विकल्प तत्व में विशेषता जोड़ना: ड्रूपल 7
कई लेखों को आजमाने और पढ़ने के बाद मुझे इस फ़ॉर्म को मेरे रूप में जोड़ने का तरीका नहीं दिख रहा है।
नीचे मेरा कोड है।
function customchatter_form_alter(&$form, &$form_state, $form_id) {
$form["tid"]["#options"][1]=t("nooo chatter");
// this works to change the label of the option but how do I add title="icons/icon-
cart.gif" ?
}
मेरे एचटीएमएल कोड:
<select id="edit-tid" name="tid" class="form-select">
<option value="All">- Any -</option>
<option value="1">nooo chatter</option>
<option value="2">Complaints Complaints</option>
<option value="3">Gear & Gadgets</option>
</select>
चीयर्स, विशाल
अद्यतन मैं क्लाइव की सलाह के अनुसार के रूप में कोड को अद्यतन करने की कोशिश की लेकिन मूल्यों अभी भी ठीक नहीं आ रहे हैं। नीचे मेरी कहानी है।
तो नीचे एचटीएमएल उत्पादन मैं प्राप्त करने के लिए कर रहा हूँ है, लेकिन शीर्षक नहीं है लेकिन मान गलत है के रूप में आप देख सकते हैं शीर्षक हमेशा नंबर 1.
<select id="edit-select" class="form-select" name="select">
<option value="1" title="1">One</option>
<option value="2" title="1">Two</option>
</select>
हो रहा है। नीचे मेरा रूप और कार्य मैंने लिखा है।
मेरे प्रपत्र:
$form['select'] = array(
'#type' => 'select',
'#options' => array(1 => 'One', 2 => 'Two'),
'#title' => array(1 => 'One', 2 => 'Two')
// I tried many combinations but nothing seems to work.
);
मेरे विषय कार्य करता है।
function kt_vusers_select($variables) {
$element = $variables['element'];
element_set_attributes($element, array('id', 'name', 'size'));
_form_set_class($element, array('form-select'));
return '<select' . drupal_attributes($element['#attributes']) . '>' .
kt_vusers_form_select_options($element) . '</select>';
}
function kt_vusers_form_select_options($element, $choices = NULL) {
if (!isset($choices)) {
$choices = $element['#options'];
}
// array_key_exists() accommodates the rare event where $element['#value'] is NULL.
// isset() fails in this situation.
$value_valid = isset($element['#value']) || array_key_exists('#value', $element);
// @vishal so there I have declared the variable to accept the values.
$vtitle = isset($element['#title']) || array_key_exists('#title', $element);
$value_is_array = $value_valid && is_array($element['#value']);
$options = '';
foreach ($choices as $key => $choice) {
if (is_array($choice)) {
$options .= '<optgroup label="' . $key . '">';
$options .= form_select_options($element, $choice);
$options .= '</optgroup>';
}
elseif (is_object($choice)) {
$options .= form_select_options($element, $choice->option);
}
else {
$key = (string) $key;
if ($value_valid && (!$value_is_array && (string) $element['#value'] === $key ||
($value_is_array && in_array($key, $element['#value'])))) {
$selected = ' selected="selected"';
}
else {
$selected = '';
}
// @vishal this is where the variable is being used.
$options .= '<option title="'.$vtitle.'" value="' . check_plain($key) . '"' . $selected .
'>' . check_plain($choice) . '</option>';
}
}
return $options;
}
नीचे
पिछले विषय समारोह के लिए सही कोड है
function kt_vusers_form_select_options($element, $choices = NULL, $vtitles=NULL) {
// Build up your own version of form_select_options here
// that takes into account your extra attribute needs.
// This will probably involve inspecting your custom FAPI property,
// which we'll call #extra_option_attributes
if (!isset($choices)) {
$choices = $element['#options'];
$vtitles = array();
$vtitles = $element['#title'];
}
// array_key_exists() accommodates the rare event where $element['#value'] is NULL.
// isset() fails in this situation.
$value_valid = isset($element['#value']) || array_key_exists('#value', $element);
$value_is_array = $value_valid && is_array($element['#value']);
$options = '';
// print_r($vtitles);
जबकि ( (सूची ($ कुंजी, $ विकल्प) = प्रत्येक ($ विकल्प)) & & (सूची ($ keytwo, $ vtitle) = प्रत्येक ($ vtitles)) ) { // printf ("% s =>% s,% s =>% s \ n", $ key1, $ value1, $ key2, $ मान 2);
if (is_array($choice)) {
$options .= '<optgroup label="' . $key . '">';
$options .= kt_vusers_form_select_options($element, $choice);
$i++;
// $options .= form_select_options($element, $vtitle);
$options .= '</optgroup>';
} // end if if is_array
elseif(is_object($choice)) {
$options .= form_select_options($element, $choice->option);
} // end of else if
else {
$key = (string) $key;
if ($value_valid && (!$value_is_array && (string) $element['#value'] === $key ||
($value_is_array && in_array($key, $element['#value'])))) {
$selected = ' selected="selected"';
}
else {
$selected = '';
}
// $options .= '<option title="'.$vtitle.'" value="' . check_plain($key) . '"' .
$selected . '>' . check_plain($choice) . '</option>';
}
$options .= '<option value="'. check_plain($key) .'" title="' . $vtitle . '"' . $selected
.'>'. check_plain($choice) .'</option>';
} // end of choice
return $options;
} // end of function
उनके बारे में यह एक खुला मुद्दा है https://drupal.org/node/342316 – gagarine