Мультивыберите выпадающий список в ASP.NET

Один из способов достижения вашей цели:

- поддерживать контроллер в чистоте только с одной моделью.

$model = new SignupForm();

- добавить дополнительные поля для профиля пользователя как свойство SignupForm.php и ввести необходимые правила для их проверки.

public $fullname;
public $dateOfBirth;
public $address;
...

public function rules()
{
    ...
    [['fullname', 'dateOfBirth', 'address'], 'required'],
}

- поставить логику для сохранения профиля пользователя внутри функции signup().

public function signup()
{
    if (!$this->validate()) {
        return null;
    }

    $user = new User();

    $user->username = $this->username;
    $user->email = $this->email;
    $user->setPassword($this->password);
    $user->generateAuthKey();

    $userProfile = new UserProfile();
    $userProfile->fullname = $this->fullname;
    $userProfile->dateOfBirth = $this->dateOfBirth;
    $userProfile->address = $this->address;

    return $user->save() && ($userProfile->userId = $user->id) !== null && $userProfile->save() ? $user : null;
}

- наконец, добавьте поля профиля пользователя в поле зрения.

33
задан David Sykes 7 April 2010 в 06:06
поделиться

6 ответов

Вы можете использовать элемент управления System.Web.UI.WebControls.CheckBoxList или использовать элемент управления System.Web.UI.WebControls.ListBox с свойство SelectionMode установлено на Несколько .

35
ответ дан 27 November 2019 в 17:57
поделиться

HTML не поддерживает раскрывающийся список с флажками. Вы можете иметь выпадающий список или список флажков. Вы могли бы подделать список выпадающих списков, используя javascript и скрывать div, но это было бы менее надежно, чем просто стандартный список флажков.

Конечно, существуют сторонние элементы управления, которые выглядят как выпадающий список флажков, но они используют приемы div.

Вы также можете использовать двойной список, который обрабатывает множественный выбор, перемещая элементы назад и вперед между двумя списками. Это дает дополнительное преимущество, заключающееся в том, что можно легко видеть все выбранные элементы одновременно, даже несмотря на то, что список общих элементов длинный

(представьте список каждого города в мире, в котором будут указаны только первый и последний выбранные)

1
ответ дан 27 November 2019 в 17:57
поделиться

Мне нравятся элементы управления Infragistics. WebDropDown имеет то, что вам нужно. Единственный недостаток - они могут быть немного излишними.

1
ответ дан 27 November 2019 в 17:57
поделиться

Выпадающий контрольный список jQuery может использоваться для преобразования обычного элемента HTML с множественным выбором в выпадающий список флажков, он работает на клиенте, поэтому может использоваться с любой технологией на стороне сервера:

alt text
(источник: googlecode.com )

27
ответ дан 27 November 2019 в 17:57
поделиться

Проверьте это. Это бесплатно.

http://irfaann.blogspot.com/2009/07/ajax-based-multiselect-dropdown-control.html

HTH,

1
ответ дан 27 November 2019 в 17:57
поделиться

Вот классный элемент управления ASP.NET Web под названием Multi-Select List Field на http://www.xnodesystems.com/. Он способен:

(1) Мультивыбор; (2) Автозаполнение; (3) валидацию.

0
ответ дан 27 November 2019 в 17:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: