jquery parseFloat 将 val 分配给字段

发布于 2024-08-29 10:43:51 字数 735 浏览 8 评论 0原文

我有一个选择框,其中提供了产品的描述以及价格。根据用户的选择,我想自动从所选选项中获取该美元金额并将其分配给价格输入字段。我的 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);
});

I have a select box that gives a description of a product along with a price. Depending on what the user selects, I'd like to automatically grab that dollar amount from the option selected and assign it to a price input field. My 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>

So based on what is selected, I want either 500 or 400 assigned to the .class input. I tried this but I'm not quite sure where I'm going wrong:

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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

杯别 2024-09-05 10:43:51

首先从 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);
});

First remove everything from the value attribute that is not part of the 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>

Second change your jQuery to this.

$('.selector').blur(function(){
    var parsedPrice = parseFloat($(this).val());
    $('.price').val(parsedPrice);
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文