- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个经过表单验证的 jQuery 验证插件 (jqueryvalidation.org),对于我使用的电话字段 Bluefieldscom's intl-tel-input plugin但我有一个问题。我遇到了以下问题:
<fieldset id="richiedi">
<form action="" method="POST" name="WebToLeadForm" method="POST" id="WebToLeadForm" class="form-horizontal col-md-11">
<input type="hidden" name="oid">
<p> </p>
<p><b>Per essere contattato da un commerciale</b>, compila il form sottostante. I campi richiesti sono obbligatori.<br /></p>
<div class="form-group">
<label class="col-md-3 control-label" for="first_name">Nome:</label>
<div class="col-md-9">
<input class="form-control" id="first_name" name="first_name" maxlength="40" tabindex="1" type="text">
<span class="glyphicons form-control-feedback" aria-hidden="true"></span>
</div>
</div>
<div class="form-group">
<label class="col-md-3 control-label" for="last_name">Cognome:</label>
<div class="col-md-9">
<input class="form-control" id="last_name" name="last_name" maxlength="80" tabindex="2" type="text">
<span class="glyphicons form-control-feedback" ></span>
</div>
</div>
<div class="form-group">
<label class="col-md-3 control-label" for="company">Azienda:</label>
<div class="col-md-9">
<input class="form-control" id="company" name="company" maxlength="40" tabindex="3" type="text">
<span class="glyphicons form-control-feedback" aria-hidden="true"></span>
</div>
</div>
<input type="hidden" name="city" value="">
<div class="form-group">
<label class="col-md-3 control-label" for="state">Provincia:</label>
<div class="col-md-9">
<select class="form-control" id="state" name="state" title="Provincia" tabindex="4">
<option disabled selected value="">--Scegli dalla lista--</option>
<option value="AGRIGENTO">AGRIGENTO</option>
<option value="ALESSANDRIA">ALESSANDRIA</option>
<option value="ANCONA">ANCONA</option>
<option value="AOSTA">AOSTA</option>
<option value="AREZZO">AREZZO</option>
<option value="ASCOLI PICENO">ASCOLI PICENO</option>
<option value="ASTI">ASTI</option>
<option value="AVELLINO">AVELLINO</option>
<option value="BARI">BARI</option>
<option value="BARLETTA-ANDRIA-TRANI">BARLETTA-ANDRIA-TRANI</option>
<option value="BELLUNO">BELLUNO</option>
<option value="BENEVENTO">BENEVENTO</option>
<option value="BERGAMO">BERGAMO</option>
<option value="BIELLA">BIELLA</option>
<option value="BOLOGNA">BOLOGNA</option>
<option value="BOLZANO">BOLZANO</option>
<option value="BRESCIA">BRESCIA</option>
<option value="BRINDISI">BRINDISI</option>
<option value="CAGLIARI">CAGLIARI</option>
<option value="CALTANISSETTA">CALTANISSETTA</option>
<option value="CAMPOBASSO">CAMPOBASSO</option>
<option value="CARBONIA-IGLESIAS">CARBONIA-IGLESIAS</option>
<option value="CASERTA">CASERTA</option>
<option value="CATANIA">CATANIA</option>
<option value="CATANZARO">CATANZARO</option>
<option value="CHIETI">CHIETI</option>
<option value="COMO">COMO</option>
<option value="COSENZA">COSENZA</option>
<option value="CREMONA">CREMONA</option>
<option value="CROTONE">CROTONE</option>
<option value="CUNEO">CUNEO</option>
<option value="ENNA">ENNA</option>
<option value="FERMO">FERMO</option>
<option value="FERRARA">FERRARA</option>
<option value="FIRENZE">FIRENZE</option>
<option value="FOGGIA">FOGGIA</option>
<option value="FORLÌ-CESENA">FORLÌ-CESENA</option>
<option value="FROSINONE">FROSINONE</option>
<option value="GENOVA">GENOVA</option>
<option value="GORIZIA">GORIZIA</option>
<option value="GROSSETO">GROSSETO</option>
<option value="IMPERIA">IMPERIA</option>
<option value="ISERNIA">ISERNIA</option>
<option value="LA SPEZIA">LA SPEZIA</option>
<option value="L'AQUILA">L'AQUILA</option>
<option value="LATINA">LATINA</option>
<option value="LECCE">LECCE</option>
<option value="LECCO">LECCO</option>
<option value="LIVORNO">LIVORNO</option>
<option value="LODI">LODI</option>
<option value="LUCCA">LUCCA</option>
<option value="MACERATA">MACERATA</option>
<option value="MANTOVA">MANTOVA</option>
<option value="MASSA-CARRARA">MASSA-CARRARA</option>
<option value="MATERA">MATERA</option>
<option value="MEDIO CAMPIDANO">MEDIO CAMPIDANO</option>
<option value="MESSINA">MESSINA</option>
<option value="MILANO">MILANO</option>
<option value="MODENA">MODENA</option>
<option value="MONZA-BRIANZA">MONZA-BRIANZA</option>
<option value="NAPOLI">NAPOLI</option>
<option value="NOVARA">NOVARA</option>
<option value="NUORO">NUORO</option>
<option value="OGLIASTRA">OGLIASTRA</option>
<option value="OLBIA-TEMPIO">OLBIA-TEMPIO</option>
<option value="ORISTANO">ORISTANO</option>
<option value="PADOVA">PADOVA</option>
<option value="PALERMO">PALERMO</option>
<option value="PARMA">PARMA</option>
<option value="PAVIA">PAVIA</option>
<option value="PERUGIA">PERUGIA</option>
<option value="PESARO-URBINO">PESARO-URBINO</option>
<option value="PESCARA">PESCARA</option>
<option value="PIACENZA">PIACENZA</option>
<option value="PISA">PISA</option>
<option value="PISTOIA">PISTOIA</option>
<option value="PORDENONE">PORDENONE</option>
<option value="POTENZA">POTENZA</option>
<option value="PRATO">PRATO</option>
<option value="RAGUSA">RAGUSA</option>
<option value="RAVENNA">RAVENNA</option>
<option value="REGGIO CALABRIA">REGGIO CALABRIA</option>
<option value="REGGIO EMILIA">REGGIO EMILIA</option>
<option value="RIETI">RIETI</option>
<option value="RIMINI">RIMINI</option>
<option value="ROMA">ROMA</option>
<option value="ROVIGO">ROVIGO</option>
<option value="SALERNO">SALERNO</option>
<option value="SASSARI">SASSARI</option>
<option value="SAVONA">SAVONA</option>
<option value="SIENA">SIENA</option>
<option value="SIRACUSA">SIRACUSA</option>
<option value="SONDRIO">SONDRIO</option>
<option value="TARANTO">TARANTO</option>
<option value="TERAMO">TERAMO</option>
<option value="TERNI">TERNI</option>
<option value="TORINO">TORINO</option>
<option value="TRAPANI">TRAPANI</option>
<option value="TRENTO">TRENTO</option>
<option value="TREVISO">TREVISO</option>
<option value="TRIESTE">TRIESTE</option>
<option value="UDINE">UDINE</option>
<option value="VARESE">VARESE</option>
<option value="VENEZIA">VENEZIA</option>
<option value="VERBANO-CUSIO-OSSOLA">VERBANO-CUSIO-OSSOLA</option>
<option value="VERCELLI">VERCELLI</option>
<option value="VERONA">VERONA</option>
<option value="VIBO VALENTIA">VIBO VALENTIA</option>
<option value="VICENZA">VICENZA</option>
<option value="VITERBO">VITERBO</option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-md-3 control-label" for="email">Email:</label>
<div class="col-md-9">
<input class="form-control" id="email" name="email" maxlength="80" tabindex="5" type="text">
<span class="glyphicons form-control-feedback" aria-hidden="true"></span>
</div>
</div>
<div class="form-group">
<label class="col-md-3 control-label" for="phone">Telefono:</label>
<div class="col-md-9">
<input class="form-control required" id="phone" name="phone" type="tel" tabindex="6">
<span class="glyphicons form-control-feedback" aria-hidden="true"></span>
<small id="valid-msg" class="hide help-block">✓ Numero di telefono valido</small>
<small id="error-msg" class="hide help-block">Numero di telefono non valido</small>
</div>
</div>
<input type="hidden" name="lead_source" value="Sito Web"><!--Fonte del lead-->
<div class="form-group">
<label class="col-md-3 control-label" for="text_message"> Messaggio:</label>
<div class="col-md-9">
<textarea class="form-control required" id="text_message" name="text_message" tabindex="7" rows="5" cols="30" wrap="soft"></textarea><!--00Nw00000088clXEAQ-->
<span class="glyphicons form-control-feedback" aria-hidden="true"></span>
</div>
</div>
<div class="form-group text-center">
<div class="col-md-3 text-right col-xs-2">
<input class="check required" type="checkbox" id="aut_privacy" tabindex="8" name="aut_privacy">
</div>
<label class="col-md-9 text-left col-xs-10" for="aut_privacy">*Autorizzo il trattamento dei miei dati personali.<br />
<span class="glyphicons form-control-feedback" aria-hidden="true"></span>
</label></div>
<input type="hidden" name="00Nw00000088clXEAQ" id="00Nw00000088clXEAQ" value="">
<button class="btn btn-default pull-right btn-lg col-xs-12 col-sm-4"name="Submit" id="submit" tabindex="16">Invia</button>
</form>
<script type="text/javascript">
$("#phone").intlTelInput({
//allowExtensions: true,
//autoFormat: false,
//autoHideDialCode: false,
autoPlaceholder: false,
defaultCountry: "it",
//ipinfoToken: "yolo",
//nationalMode: false,
//numberType: "MOBILE",
//onlyCountries: ['us', 'gb', 'ch', 'ca', 'do'],
preferredCountries: ['it'],
utilsScript: "https://img.infocert.it/js/libphonenumber.js"
});
var telInput = $("#phone"),
errorMsg = $("#error-msg"),
validMsg = $("#valid-msg");
// on blur: validate
telInput.focusout(function() {
if ($.trim(telInput.val())) {
if (telInput.intlTelInput("isValidNumber")) {
validMsg.removeClass("hide");
} else {
telInput.addClass("error");
errorMsg.removeClass("hide");
validMsg.addClass("hide");
}
}
var numberType = $("#phone").intlTelInput("getNumberType");
if (numberType == intlTelInputUtils.numberType.MOBILE) {
// is a mobile number
$("#phone").attr('name', 'mobile');
}else{
$("#phone").attr('name', 'phone');
}
});
// on keydown: reset
telInput.keydown(function() {
telInput.removeClass("error");
errorMsg.addClass("hide");
validMsg.addClass("hide");
});
$("#text_message").focusout(function(){$("#00Nw00000088clXEAQ").val($("#text_message").val())})
jQuery.validator.addMethod('validatePhone', function() {
if ($("#phone").intlTelInput("isValidNumber")){
return true;
}
else{
return false;
}
}, "Numero non valido");
$(window).load(function() {
$("#WebToLeadForm").validate(
{
errorElement: 'small',
errorClass: 'help-block',
errorPlacement: function(error, element) {
if (element.attr("name") == "aut_privacy" ) {
error.insertBefore(element.parent());
}else {
error.insertAfter(element);
}
},
rules:
{
first_name:{
required: true,
minlength: 2
},
last_name:{
required: true,
minlength: 2
},
company:{
required:true
},
state:{
required:true
},
email:{
required: true,
email: true
}
},
phone:{
required: true,
validatePhone: true
},
text_message:{
required:true,
minlength : 20
},
aut_privacy:{
required:true,
},
messages:
{
first_name:{
required: "Inserire il proprio nome",
minlength: "Inserire il proprio nome"
},
last_name:{
required: "Inserire il proprio cognome",
minlength: "Inserire il proprio cognome"
},
company:"Fornire il nome dell'azienda",
state:"",
email:{
required: "Inserire la propria e-mail per ottenere un contatto",
email: "L'indirizzo e-mail non è valido!"
},
phone:"Fornire il nome dell'azienda",
text_message:"Spiegaci brevemente la tua situazione",
aut_privacy:"È necessaria l'autorizzazione al trattamento dei dati"
},
highlight: function (element) {
$(element).closest('.form-group').removeClass('has-success').addClass('has-error');
$(element).siblings().filter('.glyphicons').removeClass('ok_2').addClass('remove_2');
},
unhighlight: function (element) {
$(element).closest('.form-group').removeClass('has-error').addClass('has-success');
$(element).siblings().filter('.glyphicons').removeClass('remove_2').addClass('ok_2');
}
});
});
$('#submit').click(function(){
if ($("#WebToLeadForm").valid() && $('#phone').val().length != 0 && $("#phone").intlTelInput("isValidNumber")){
alert('$("#WebToLeadForm").submit()')
}
else {
alert('Errore');
return false;
}
});
谢谢大家。
最佳答案
两个问题:
右大括号放错位置,导致三个字段位于 .validate()
方法中的 rules
对象之外。请参阅:http://jsfiddle.net/g6cbsh1b/
rules: {
first_name: {
required: true,
minlength: 2
},
last_name: {
required: true,
minlength: 2
},
company: {
required: true
},
state: {
required: true
},
email: {
required: true,
email: true
} // <-- EXTRA BRACE
},
phone: {
required: true,
validatePhone: true
},
text_message: {
required: true,
minlength: 20
},
aut_privacy: {
required: true,
// <-- MISSING A BRACE
},
您的 .validate()
方法没有在正确的时间调用,您的自定义消息被忽略即可证明。我将所有代码放入 DOM 就绪事件处理程序中。
为了便于阅读和故障排除,我单击“TidyUp”按钮将您的代码转换为 1TBS 格式。
关于jquery - 将 Bluefieldscom intl-tel-input 与 jQuery 验证插件结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29351314/
我添加了模块 Ember 国际在我的应用程序中,因为 Ember -i18n 已弃用。 所以 yarn 运行良好,更新 package.json 和 yarn.lock(我摆脱了 package.lo
我检查了这个来源 https://formatjs.io/docs/react-intl#runtime-requirements , 并尝试添加此代码 import { NumberFormat }
我正在尝试使用 react-intl 进行语言翻译。当我使用这个时,它运行完美。但是当我将以下代码与 intl.formatMessage() 一起使用时,它不起作用并抛出一些错误。我不知道这有什么问
我正在使用 React-intl 来实现 UI Util 库的国际化。该库有一个名为 i18n 的文件夹,其中我放置了不同区域设置的 json 文件。如果该库的用户想要添加对其他区域设置的支持,他/她
我正在使用 React-intl 来实现 UI Util 库的国际化。该库有一个名为 i18n 的文件夹,其中我放置了不同区域设置的 json 文件。如果该库的用户想要添加对其他区域设置的支持,他/她
嗨,我最近尝试使用日期选择器进行 flutter ,但我没有找到任何文档或教程,所以我打开 flutter 画廊项目并尝试复制代码。按照我导入“package:intl/intl.dart”库的代码。
我在一个大型 React 项目中使用 React Intl 的 FormattedNumber,该项目具有多种不同语言的功能。 这是我制作的货币组件,以便我可以轻松地将格式化的货币插入到我的 View
目前正在使用中 babel-plugin-react-intl , 使用“id”、“description”和“defaultMessage”为每个组件创建单独的 json。我需要的是只创建一个 js
我有一个 monorepo,它公开了一个 TypeScript 模块,该模块由 React TypeScript 项目使用和使用。 当模块将任意 React 元素插入到虚拟 DOM 中时 - 一切都按
我正在尝试在我全新安装的 OS X 10.6.6 上安装 PHP 扩展 intl,使用它附带的 PHP 版本 (v5.3.3)。 我知道扩展需要 ICU,所以我用自制软件安装了它。我安装的 ICU 版
因为每个版本flutter_localizations来自 SDK 取决于 intl 0.17.0而 fstore 依赖于 intl ^0.16.1 , 禁止来自 SDK 的 flutter_loca
我想使用package:intl制作多国语言html页面。 我看过example / basic_example.dart,但找不到intl_helpers的message_lookup_by_lib
我有数据列表,我想从最早到最晚过滤它们 包含数据的列表如下所示: [{id: 73, startTime: 2022-12-13T15:30:57.244Z}, {id: 74, startTime:
我有数据列表,我想从最早到最晚过滤它们 包含数据的列表如下所示: [{id: 73, startTime: 2022-12-13T15:30:57.244Z}, {id: 74, startTime:
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-2
我正在使用 PHP Intl 库来格式化日期、数字等。现在我必须在人类可读的字符串中显示时间跨度,例如: 1day, 1hour, 10 minutes, 14s 或者以紧凑的方式: 1d 1s 10
我希望 Intl.NumberFormat() 能够根据通用规则自动将单位从较小的单位转换为较大的单位。 IE。给定的数字应根据数字的大小在输出中转换为厘米、米和公里。 代码示例: const byt
我想知道是否有办法让我使用 Javascript 的 Intl.NumberFormat()用它创造一个平方米的值(value)。 比如说,我想用它来创建一个具有该功能的值,如 30 m²。页面上或任
我从 WordPress Site Health 看到这条消息。如何安装缺少的模块? The WordPress Hosting Team maintains a list of those modu
我在 Centos 7 上使用 Virtualmin 作为控制面板,我需要安装 php intl 扩展才能使用 prestashop。 我用了这个命令 yum --enablerepo=remi in
我是一名优秀的程序员,十分优秀!