javascript - .replace() 在 jQuery 函数中不起作用

标签 javascript jquery

我不明白为什么replace()函数不能在我的jQuery函数中工作:

jQuery(document).ready(function($){
   var amount_min =  <?php if($_GET['amount_min']) echo $_GET['amount_min']; else echo '0'; ?>;
   var amount_min = amount_min.replace(/[^\d]/g, "");
   $('input[name=amount]').val(amount_min);
});

无论我输入什么(例如“100ab”或“10.000”),它都不会替换为“100”或“10000”。 怎么办?

最佳答案

你忘了加双引号。

var amount_min = "<?php if($_GET['amount_min']) echo $_GET['amount_min']; else echo 0; ?>";

因为,replace在字符串中工作。


更新#1

如果出于任何宗教原因,您不想将 PHP 用双引号引起来,则将它们与数字一起输出。

var amount_min = <?php echo '"' . ($_GET['amount_min'] ? $_GET['amount_min'] : 0) . '"'; ?>;

更新#2

您可以使用的强制验证:

var amount_min = <?php echo '"' . (int)($_GET['amount_min']) . '"'; ?>;

关于javascript - .replace() 在 jQuery 函数中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14083205/

相关文章:

javascript - 如何在使用 API 进行搜索时将 lambda 函数的输出返回到 Web 前端

javascript - 无法进入我的 for 循环 (Javascript)

javascript - 如何在 JQUERY 中创建一个简单的向上滑动向下滑动登录/注册分区

javascript - 在 javascript 中获取下拉值或文本时出错

javascript - 在 Angular 中,在选定的选项上为其他选项设置默认值

javascript - `the page is being unloaded` 错误

javascript - 如何在 html 表格中给出分界线。?

javascript - 不使用标准 <a href> 链接时的动画滚动

javascript - 单击按钮时仅显示 $(this) 行表格数据

asp.net-mvc-3 - MVC3 Controller 返回 JsonFile