2012-07-24 7 views
5

Używam wersji Magento 1.5.1.0. I dodaje atrybut z następujących opcji wybranych w zakładce Właściwości:Jak usunąć początkową pustą wartość atrybutu dropdown w Magento?

Catalog input type for store owner: dropdown 
Unique value: no 
Values required: no 

Poszedłem do zakładki Zarządzanie Label/Opcje i dodano 3 różne opcje, wybierając pierwszą opcję jako domyślną. Dodałem go do zestawu atrybutów, a kiedy idę, aby wprowadzić produkt, widzę listę rozwijaną, ale z pustym wartości opcji dołączany do niego:

<select> 
<option selected="selected"></option> 
<option>Option 1</option> 
<option>Option 2</option> 
<option>Option 3</option> 
</select> 

Kiedy zapisać produkt, opcja pusty nadal pozostaje wybrany. Jak usunąć tę pustą opcję i ustawić opcję 1 jako domyślną dla wszystkich moich istniejących produktów bez konieczności używania JS lub edytowania jakichkolwiek plików?

+0

To byłoby pomocne dla wszystkich, gdyby można było wyjaśnić, dlaczego downvoted. – Sturm

+0

Witam, wiem, że to stare pytanie, ale w Magento 1.9 nadal się dzieje. Problemem nie jest malowanie html, ponieważ tablica z opcjami ma pustą wartość. W ten sposób: array (2) {[0] => array (2) {["label"] => string (0) "" ["value"] => string (0) ""} [1] => array (2) {["value"] => string (1) "8" ["label"] => string (15) "blablablabla"}} W moim przypadku dzieje się to z atrybutami produktu w interfejsie. – Unknown

Odpowiedz

0
<select name="history[status]" class="select" id="history_status"> 
    <option value="pending" selected="selected">Pending</option> 
    <option value="canceled">Canceled</option> 
    <option value="processing">Processing</option> 
</select> 

Spróbuj użyć znacznika SELECT zamiast opcji dla tego bloku. Powyżej mam przykład zaczerpnięty ze sklepu Magento. Twój:

<option selected="selected></option> 

To jest dokładnie to. Opcja, zamiast definiować pole wyboru.

+0

Edytowałem moje pytanie dla większej jasności. Problem polega na tym, że nigdy nie dodałem pustej wartości do listy opcji. Chcę to zrobić wszystko w backend i bez żadnych znaczników lub skryptów, jeśli to możliwe. Teraz używam JS, ponieważ czas nie jest po mojej stronie, ale jeśli ktokolwiek wie, czego mi brakuje, bardzo by to pomogło. – danronmoon

+0

Brakowało mi twojego komentarza, spoglądam na to rano, kiedy jestem lepiej wypoczęty. – Sturm

2

Myślę, że to może pomóc.

Po wywołaniu getAllOptions należy podać wartość false.

-> getAllOptions (false)

Magento attribute dropdown with first empty value

+0

Hej, twoja sugestia jest dla mnie ważna, również przegłosowałem. ale czy mogę wiedzieć, co oznacza FALSE? tylko dla mojej wiedzy. Jeśli przekazuję fałsz, to co dokładnie się stanie? Dziękuję bardzo –

Powiązane problemy