javascript - PHP函数中的Jquery - 数字格式
问题描述
我正在尝试在 wordpress 的 PHP 函数中运行 javascript/jquery 代码。其实我在这个链接找到了这段代码:http: //jsfiddle.net/fXrv2/
如您所见,它运行良好。但是我的最终代码中似乎缺少一些东西,因为文本字段无法自动完成数字格式。
知道为什么它不起作用吗?
<?php
function teste() {
?>
<script type="text/javascript">
$('input.number').keyup(function(event) {
// skip for arrow keys
if(event.which >= 37 && event.which <= 40){
event.preventDefault();
}
$(this).val(function(index, value) {
return value
.replace(/\D/g, "")
.replace(/([0-9])([0-9]{2})$/, '$1.$2')
.replace(/\B(?=(\d{3})+(?!\d)\.?)/g, ",")
;
});
});
</script>
<input type="text" class="number">
<?php
}
解决方案
由于该 JS 都是客户端,因此您将获得更一致的结果,包括该脚本与您的 PHP 完全分离。如果您的主题已经有一个 JavaScript 文件,您可以将其添加到这很好,或者您可以将其添加到单独的 .js 文件并使用wp_enqueue_scripts()将该文件排入队列。
无论您选择哪种方式,您都希望在 document.ready() 或窗口加载时调用它(请参阅 jQuery 文档),以确保您尝试选择的输入元素可供 JS 查找。在您链接到它的 JS fiddle 中,它设置为使用 JS onLoad,这可能与您当前的内联脚本有很大的不同。
推荐阅读
- python - 无法使用 patool 包提取 gz 文件
- r - 如何计算R中不同类别之间的重叠
- python - 使用 Numpy 缓解浮点逼近问题
- swift - 如何在 Swift 中使用这个 fetchRequest()?
- sql - 为什么@@ROWCOUNT 为使用 sp_executesql 的 NULL 语句返回 1?
- android - 反正有没有使用矩形区域作为地理围栏?
- amazon-web-services - 如何使用 EC2 上的配置文件访问 S3?(sts.amazonaws.com:443 错误)
- python - 找出列表和集合之间的区别
- python - /cart/update-transaction/0cqydz1f/ 处的 IntegrityError
- python - 我需要从漂亮的 json 创建输出