gpt4 book ai didi

javascript - 将 href 更改为 tel : + number (user defined)

转载 作者:行者123 更新时间:2023-11-30 10:11:27 25 4
gpt4 key购买 nike

我正在尝试编写一个脚本,用户可以在其中输入电话号码并将其存储在输入中(在此演示中有效:http://bootsnipp.com/snippets/featured/iphone-number-pad),然后更新 href=""= "tel:"+ that-相同的值(value)。因此,例如,如果用户键入 600 999 999,href 将更新为 href="tel:600 999 999",然后用户可以单击该按钮并调用电话。

为了解决这个问题,我一直在自责。这看起来真的很简单,因为我什至没有尝试将电话号码限制为 6-7 个字符。

如有任何帮助,我们将不胜感激。

   $(document).ready(function() {
// Get number
$('.num').click(function() {
var num = $(this);
var text = $.trim(num.find('.txt').clone().children().remove().end().text());
var telNumber = $('#telNumber');
$(telNumber).val(telNumber.val() + text);
$('#call-this').href = "tel:" + $(telNumber).val(telNumber.val() + text)

console.log(text);
console.log(telNumber);
});
// add number to href
var call = $(#call - this).attr('target')
// Other stuff I've tired
// $('#call-this').click(
// $('#call-this').href="tel:" + $(telNumber).val(telNumber.val() + text)
// var call = $('#call-this');
// $('#call-this').href= "tel:" + telNumber;
// console.log(call);
// });

});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="tel" name="name" id="telNumber" class="form-control tel" value="" />
<div class="num">
<div class="txt">0</div>
</div>
<div class="num">
<div class="txt">1</div>
</div>
<div class="num">
<div class="txt">2</div>
</div>

<div class="num">
<div class="txt">3</div>
</div>
<div class="num">
<div class="txt">4</div>
</div>
<div class="num">
<div class="txt">5</div>
</div>

<div class="num">
<div class="txt">6</div>
</div>
<div class="num">
<div class="txt">7</div>
</div>
<div class="num">
<div class="txt">8</div>
</div>
<div class="num">
<div class="txt">9</div>
</div>
<button class="expand">
<a href="#" id="call-this" style="color:black;">Call</a>
</button>

最佳答案

您的函数实际上可以简化为这个 — 原因是如果 .txt 元素是 的唯一子元素,则您不需要真正横向移动到该元素>.num 并且它只包含感兴趣的数字。

$(document).ready(function () {
$('.num').click(function () {
// Append trimmed number to current value
$(telNumber).val($(telNumber).val() + $(this).text().trim());

// Update href attribute on #call-this
$('#call-this').attr('href', 'tel:'+$(telNumber).val());
});
});

在这里查看 fiddle :http://jsfiddle.net/teddyrised/jwqL4o8w/3


事实上,更好的选择是将数字存储在 HTML5 data- 属性中,这样您就可以自由更改 .txt 元素的 innerHTML 而无需担心问题:

<div class="num" data-num="0">
<div class="txt">0</div>
</div>

然后对于您的 JS,只需使用:

$(document).ready(function () {
$('.num').click(function () {
// Append trimmed number to current value
$(telNumber).val($(telNumber).val() + $(this).data('num'));

// Update href attribute on #call-this
$('#call-this').attr('href', 'tel:'+$(telNumber).val());
});
});

关于javascript - 将 href 更改为 tel : + number (user defined),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26408576/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com