我在頁面上有一個下拉列表。我使用jquery在其下拉列表中實現了更改事件,並且它的工作正常。這裏是我的jQuery代碼。選擇更改事件中的問題
drupal_add_js('$(document).ready(
$('.$form['title']['select'].').change(function() {
var str = "";
var date = "";
$("'.$form['title']['select'].' option:selected").each(function() {
str += $(this).text() + " ";
date += this.value + " ";
$("#edit-titletext").val(str);
$("#edit-datetext").val(date);
});
})
)
.change();', 'inline', 'header');
其中title是字段名稱,select是它的類型。 titletext和datetext是文本框的字段名稱。我的代碼工作得很好。
但在同一頁上我放置了一個有另一個下拉列表的塊。現在,當我更改塊的下拉列表中的值時,該jQuery代碼也針對此更改事件執行。現在在兩個下拉列表中執行更改事件。 而我希望它只能在第一個下拉列表中執行,該列表中有一個名稱「標題」。
任何一個誰可以解決我的問題......
編輯:
$form = array();
$form['title'] = array(
'#type' => 'select',
'#title' => t('Select a forum'),
'#page callback' => 'drupal_get_form',
'#page arguments' => array('test_select'),
'#access callback' => TRUE,
'#options' => $options
);
您可以添加您使用的PHP'$ form'對象,以便可以確定正確的選擇器嗎? – andyb 2011-04-27 12:37:06
這是我的表單代碼。
$form = array(); $form['title'] = array( \t '#type' => 'select', \t '#title' => t('Select a forum'), \t '#page callback' => 'drupal_get_form', \t '#page arguments' => array('test_select'), \t '#access callback' => TRUE, \t '#options' => $options, \t );
– Ahmad 2011-04-28 04:44:34