【问题标题】:number formating problem in php and ajaxphp和ajax中的数字格式问题
【发布时间】:2011-03-23 17:23:10
【问题描述】:

我有一个使用以下语法格式的文本框

       $("#cont_dt").blur(function(){
      $(this).format({format:"#,###.00", locale:"us"}); 
        })  

这很好,例如,如果我输入 250000.50,它会自动格式化为

    250,000.50

但问题是当我尝试通过 ajax 将相同的值传递给 php 文件以在 mysql 中添加记录时 我有错误。

我想我需要再次以 250000.50 格式将 250,000.50 带入 mysql 中。

我该怎么做?

谢谢

          **EDIT**

亲爱的,我需要删除 ajax / java 脚本函数,而不是 php 函数。 感谢帮助

【问题讨论】:

    标签: php jquery ajax number-formatting


    【解决方案1】:

    只需 .format() 元素 onSubmit

    【讨论】:

    • 我尝试使用 .fromat 我无法成功,因为我想在传递之前格式化变量的值...
    【解决方案2】:

    将非格式化数字传递给 PHP,或者使用 str_replace(",","", $number) 删除逗号。

    【讨论】:

    • 不应该有更“漂亮”的方法来做到这一点吗?例如,当语言环境将, 定义为小数点分隔符时,它不会搞砸? (我不是说这个答案没用,我只是想知道......)
    • @MvanGeest 因为他在 Javascript 中明确定义了语言环境,所以可以保证“。”是小数点分隔符。
    • @Mvan 回答问题的另一部分,有 numfmt_parse。
    • 之所以这么问,是因为 SO 应该是一个“取之不尽的信息集合”,“由您的程序员同事协作构建和维护”……或其他。我想,解决方案越多越好。
    【解决方案3】:

    您用于在 mysql 表中存储此值的字段的字段类型是什么?

    使用 int、double 或 decimal 您将无法使用逗号存储值。如果您设置使用逗号存储值,而不是在将数字拉出表格时对其进行格式化,那么您可以将字段类型更改为 varchar。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-06-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多