Como desabilitar / habilitar o campo de seleção usando jQuery?

Eu gostaria de criar uma opção em um formulário como

<code>[] I would like to order a [selectbox with pizza] pizza
</code>

onde selectbox é habilitado somente quando a caixa de seleção está marcada e desabilitada quando não está marcada.

Eu chego com este código:

<code><form>
<input type="checkbox" id="pizza" name="pizza" value="yes"> <label for="pizza">
I would like to order a</label>
<select name="pizza_kind">
    <option>(choose one)</option>
    <option value="margaritha">Margaritha</option>
    <option value="hawai">Hawai</option>
</select>
pizza.
</form>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js">
</script>
<script>
var update_pizza = function () {
    if ($("#pizza").is(":checked")) {
        $("#pizza_kind").removeAttr("disabled");
    }
    else {
        $("#pizza_kind").prop('disabled', 'disabled');
    }
};

$(update_pizza);
$("#pizza").change(update_pizza);
</script>
</code>

Eu tentei vários métodos como definir atributo desativado usando.prop(), .attr()e.disabled=. No entanto, nada acontece. Ao aplicar a um<input type="checkbox"> ao invés de<select>, o código funciona perfeitamente.

Como desativar / ativar<select> usando jQuery?

questionAnswers(8)

yourAnswerToTheQuestion