英文:
domain name - Count number of characters except TLDs
问题
我需要统计域名字符数并填充隐藏输入字段。
域名:google.com
仅统计 "google"
统计值 = 5
不要统计顶级域名 - .com
问题出在哪里 - 它无法正常工作。
$('#domain').keyup(updateInputs);
$('#domain').keydown(updateInputs);
$('#domain').trigger('keyup');
function updateInputs() {
if ($(this).val().length > 0) {
$('#count').val($(this).val().replace(/(?=\.).*/).length);
}
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="text" name="domain" id="domain" class="domain" value="google.com">
<input type="text" name="count" id="count" class="count" value="">
$('#domain').keyup(updateInputs);
$('#domain').keydown(updateInputs);
$('#domain').trigger('keyup');
function updateInputs() {
if ($(this).val().length > 0) {
var onedot = new RegExp('(?=\\.).*');
var counter = $(this).val().match(onedot).length;
$('#count').prop('value', counter);
}
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="text" name="domain" id="domain" class="domain" value="google.com">
<input type="text" name="count" id="count" class="count" value="">
英文:
I need domain name counting of characters and fill input hidden.
domain name: google.com
count google only
count value = 5
do not count TLDs - .com
Where is the problem - it is not working.
<!-- begin snippet: js hide: false console: true babel: false -->
<!-- language: lang-js -->
$('#domain').keyup(updateInputs);
$('#domain').keydown(updateInputs);
$('#domain').trigger('keyup');
function updateInputs() {
if ($(this).val().length > 0) {
$('#count').val($(this).val().replace(/(?=\.).*/).length);
}
}
<!-- language: lang-html -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="text" name="domain" id="domain" class="domain" value="google.com">
<input type="text" name="count" id="count" class="count" value="">
<!-- end snippet -->
<!-- begin snippet: js hide: false console: true babel: false -->
<!-- language: lang-js -->
$('#domain').keyup(updateInputs);
$('#domain').keydown(updateInputs);
$('#domain').trigger('keyup');
function updateInputs() {
if ($(this).val().length > 0) {
var onedot = new RegExp('(?=\.).*');
var counter = $(this).val().match(onedot).length;
$('#count').prop('value', counter);
}
}
<!-- language: lang-html -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="text" name="domain" id="domain" class="domain" value="google.com">
<input type="text" name="count" id="count" class="count" value="">
<!-- end snippet -->
答案1
得分: 0
你忘记替换字符串。
<!-- begin snippet: js hide: false console: true babel: false -->
<!-- language: lang-js -->
$('#domain')
.on("input", updateInputs)
.trigger('input');
function updateInputs() {
$('#count').val(
$(this).val().replace(/(?=\.).*/,"") || ""
)
}
<!-- language: lang-html -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="text" name="domain" id="domain" class="domain" value="google.com">
<input type="text" name="count" id="count" class="count" value="">
<!-- end snippet -->
英文:
You forgot the replace by string
<!-- begin snippet: js hide: false console: true babel: false -->
<!-- language: lang-js -->
$('#domain')
.on("input",updateInputs)
.trigger('input');
function updateInputs() {
$('#count').val(
$(this).val().replace(/(?=\.).*/,"").length || ""
)
}
<!-- language: lang-html -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="text" name="domain" id="domain" class="domain" value="google.com">
<input type="text" name="count" id="count" class="count" value="">
<!-- end snippet -->
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论