【发布时间】:2019-03-22 12:45:58
【问题描述】:
<label for="updateInterval" class="control-label" for="UpdateInterval">Select Interval</label>
<input name="intervalRange" id="intervalRange" ng-pattern="" type="number" class="form-control input-medium fld-updateinterval-val" placeholder="" ng-model="update_interval" ng-required="true" >
<select class="form-control input-medium sampleForm-combo" onchange="changetextbox(this.value)" id="action" ng-model="update_intervalSelect" ng-required="true">
<option></option>
<option value="days">days</option>
<option value="hours">hours</option>
</select>
上面我有一个输入框和一个下拉列表,其中第一个文本框中输入的值取决于下拉列表中选择的值。 JavaScript 读得很好,但我的问题是 ng-pattern 不起作用,我不知道为什么。如果我在 Firebug 中检查它,则会显示 ng-pattern 已放入文本框中,但我不确定为什么我仍然能够输入不在我指定范围内的数字。
function changetextbox(interval)
{
if(interval == "days"){
$(".fld-updateinterval-val").attr("placeholder", "1-365");
$(".fld-updateinterval-val").attr("ng-pattern", "/\\b([1-9][0-9]?|[12][0-9]{2}|3[0-5][0-9]|36[0-5])\\b/");
}
else if (interval == "hours"){
$(".fld-updateinterval-val").attr("placeholder", "1-8760");
$(".fld-updateinterval-val").attr("ng-pattern", "/\\b([1-9][0-9]{0,2}|[1-7][0-9]{3}|8[0-6][0-9]{2}|87[0-5][0-9]|8760)\\b/");
}
【问题讨论】:
标签: javascript html css regex angularjs