小编ctg*_*ott的帖子

rails 视图中电话表单字段的输入掩码

我的应用程序中有一个客户联系表格,当然,它需要电话输入。我正在运行 Rails 3.2.13 并使用 Zurb Foundation。我希望找到一个 gem,它以我可以调用的 '(999) 999-9999' 形式提供输入掩码。我的数据确实是本地数据,因此我只需要美国格式的数字。

我能够在现场执行验证,但希望将用户保持在输入掩码的更严格边界内。这就是我目前所拥有的。

  <div class="large-4 columns"><%= f.telephone_field :phone, :placeholder => "Phone - (123) 456-7890" %></div>
Run Code Online (Sandbox Code Playgroud)

对此有什么很棒的宝石,或者您喜欢的 jQuery 插件?

干杯!

- 编辑所以这是我需要完成的完整答案。以防万一有人正在寻找快速解决方案。这是我的 _form.html.erb 视图文件中的代码:

<div class="large-2 columns">
   <%= f.text_field :phone, :id => "phone", :placeholder => "Primary Phone"%>
</div>
Run Code Online (Sandbox Code Playgroud)

这是我的 assets/javascripts 文件夹中咖啡文件中的代码:

$ ->
   $("#phone").mask("(999) 999-9999")
Run Code Online (Sandbox Code Playgroud)

您需要从下面提到的@vinodadhikary 链接下载相应的 jquery.maskedinput.js 文件。然后,您必须在 application.js 文件中的依赖项列表中的 jquery 文件下方某处需要该文件,如下所示:

//= require jquery
//= require jquery_ujs
//= require foundation
//= require jquery.maskedinput
//= require_tree .
Run Code Online (Sandbox Code Playgroud)

就是这样。如果您发现任何不妥之处,请告诉我,我会进行编辑。

gem ruby-on-rails zurb-foundation input-mask

5
推荐指数
1
解决办法
9201
查看次数

从String转换为BigDecimal以对货币进行数学运算

我正在开发一个项目,需要对货币执行一些简单的数学运算,但它以String的形式到达.我是Java/Android的新手,所以我正在寻找帮助从String转换为适合此操作的数据类型.起初我认为Float是正确的但是在读完其他地方并将自己介绍给数字类后,看起来BigDecimal是正确的.我是在正确的轨道上吗?此时,我只想从初始发票金额中减去付款总额.我觉得这段代码很简单但很笨拙,我怀疑我对使用货币的细微差别缺少很多.你会怎么做?所有建议都热烈赞赏!

    // capture variables from sending activity
    String invoiceAmt = getIntent().getStringExtra("invoiceAmt");
    String paymentsSum = getIntent().getStringExtra("paymentsSum");

    // convert strings to BigD's 
    BigDecimal amt = new BigDecimal(invoiceAmt);
    BigDecimal sum = new BigDecimal(paymentsSum);

    // Do the math
    BigDecimal invDue = amt.subtract(sum);

    // insert the value (back to string) into textView
    TextView tvInvoiceDue = (TextView)findViewById(R.id.InvoiceDue);
    tvInvoiceDue.setText(invDue.toString());
Run Code Online (Sandbox Code Playgroud)

java string android currency bigdecimal

4
推荐指数
1
解决办法
2万
查看次数

将android JSONObject发布到PHP的问题

我无法获得一个简单的JSONObject的android POST,以显示在服务器上的$ _POST数据中.服务器是PHP 5.3.4,android端是SDK 8模拟器.我可以像往常一样发布一个简单的NameValuePair,但是当我切换到你在下面看到的JSONObject + StringEntity时,$ _POST数组显示{}.继续在我的测试php页面上运行下面的代码.它有一个$ _POST和$ _SERVER的var_dump,以及搜索其中一个预期的键('email').你会看到我尝试了很多'ContentType',看看是不是问题.我甚至使用WireShark来验证客户端和服务器之间的TCP会话是否正常.POST数据在那里,但它没有显示在服务器的变量中.我被困了...感谢您提供的任何帮助.

import java.io.InputStream;

import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.HttpConnectionParams;
import org.json.JSONObject;

import android.util.Log;

public class TestPOST {
    protected static void sendJson (final String email, final String pwd) {
        HttpClient client = new DefaultHttpClient();
        HttpConnectionParams.setConnectionTimeout(client.getParams(), 10000); //Timeout Limit
        HttpResponse response;
        String URL = "http://web-billings.com/testPost.php";
        try{
            HttpPost post = new HttpPost(URL);

            // NameValuePair That is working fine...
            //List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);  
            //nameValuePairs.add(new BasicNameValuePair("email", email));  
            //nameValuePairs.add(new BasicNameValuePair("password", …
Run Code Online (Sandbox Code Playgroud)

php post android json

3
推荐指数
1
解决办法
9589
查看次数