0

我正在尝试使用 WebView 制作 JQuery-mobil 应用程序 + Android。

该应用程序html-input默认设置为type="text" 如果最终用户按下输入然后标准 Android 键盘弹出窗口。

像这样:

还行吧

但是我需要一个按钮来改变typetype="number"所以按下键盘只显示数字。

像这样:

这是我为此使用的 HTML:

/*html-input*/
<input type="text" name="regnr" value=""/>

/*Open keybord as number-keybord: </label>
<a href="#" data-role="button" data-mini="true" id="keybord-as-numbers">Number</a>

此 JQuery 脚本replaceWith用于在单击按钮时替换输入标记,因此类型设置为数字

<script>
$(function(){
    //onClick: keybord-as-numbers
    $("#keybord-as-numbers").click(function(){
        $("#regnr").replaceWith("");
        $("#div-searchnumber").html('<input type="number" class="searchnumber" data-icon="search" name="regnr" maxlength="4" id="regnr" value="" data-inline="true" autofocus /\>');
    });
});
</script>

问题是它删除了 css 样式,并且在函数执行后我不能.get从 , 中获取值。html-inputreplaceWith

我试过了,$('#regnr').attr('type', 'number');但这看起来不像这样有效:(

4

1 回答 1

0

查看http://www.texotela.co.uk/code/jquery/numeric/

您可以简单地更改您的班级 ID 并在您的页面上使用此代码:

$(document).ready(function(){
    $(".numeric").numeric();
});

如果您不想使用 jQuery,您可以编写自己的函数并将其称为 onkeyup 事件

请参阅:http ://www.htmlcodetutorial.com/forms/index_famsupp_158.html

另一种选择是使用 step 属性:

http://www.w3.org/TR/html-markup/input.number.html#input.number.attrs.step.float

<input type="number" step="0.01" min="0" >
于 2012-07-14T04:32:18.110 回答