jquery parseFloat присваивает значение val полю - PullRequest
1 голос
/ 20 апреля 2010

У меня есть поле выбора, которое дает описание продукта вместе с ценой. В зависимости от того, что выберет пользователь, я бы хотел автоматически получить эту сумму в долларах из выбранного варианта и назначить ее в поле ввода цены. Мой HTML:

<tr>
    <td>
        <select class="selector">
            <option value="Item One $500">Item One $500</option>
            <option value="Item Two $400">Item Two $400</option>
        </select>
    </td>
    <td>
        <input type="text" class="price"></input>
    </td>
</tr>

Итак, исходя из того, что выбрано, я хочу, чтобы 500 или 400 были назначены на вход .class. Я пробовал это, но я не совсем уверен, где я иду не так:

$('.selector').blur(function(){
    var selectVal = ('.selector > option.val()');
    var parsedPrice = parseFloat(selectVal.val());
    $('.price').val(parsedPrice);
});

1 Ответ

4 голосов
/ 20 апреля 2010

Сначала удалите из атрибута value все, что не является частью значения.

<tr>
    <td>
        <select class="selector">
            <option value="500">Item One $500</option>
            <option value="400">Item Two $400</option>
        </select>
    </td>
    <td>
        <input type="text" class="price"></input>
    </td>
</tr>

Во-вторых, измените свой jQuery на это.

$('.selector').blur(function(){
    var parsedPrice = parseFloat($(this).val());
    $('.price').val(parsedPrice);
});
...