当文本框失去焦点时将给定字符串转换为分钟

Convert given string to minutes when text box loses focus

我正在开发一个表单,其中有一个名为“可用自”的字段(该文本 bod 的时间应以分钟为单位输入)用户如果在文本框中输入 2h(小时),则尽快它失去了焦点,2h 应该转换为分钟,与以天为单位输入时相同,例如:2d 应该转换为 2880 分钟,应该出现在文本框中。如果以分钟为单位输入,则应保留为分钟。我是 java 脚本和 jQuery 的新手。任何帮助将不胜感激

我假设你只是在测试。它对现实世界的场景不是很有用,因为有太多的可能性。

首先,使用jQuery blur。然后将输入值转换为适当的分钟。

<asp:TextBox runat="server" ID="TextBox1" />
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
    $("#<%= TextBox1.ClientID %>").blur(function () {
        var input = $(this).val();
        // Apply your logic here
        if (input.match(/h$/)) {
            $(this).val(input.slice(0, -1) * 60);
        }
        else if (input.match(/d$/)) {
            $(this).val(input.slice(0, -1) * 60 * 24);
        }
        console.log(input);
    })
</script>