我的应用程序中有一个客户联系表格,当然,它需要电话输入。我正在运行 Rails 3.2.13 并使用 Zurb Foundation。我希望找到一个 gem,它以我可以调用的 '(999) 999-9999' 形式提供输入掩码。我的数据确实是本地数据,因此我只需要美国格式的数字。
我能够在现场执行验证,但希望将用户保持在输入掩码的更严格边界内。这就是我目前所拥有的。
Run Code Online (Sandbox Code Playgroud)<div class="large-4 columns"><%= f.telephone_field :phone, :placeholder => "Phone - (123) 456-7890" %></div>
对此有什么很棒的宝石,或者您喜欢的 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)
就是这样。如果您发现任何不妥之处,请告诉我,我会进行编辑。
我正在开发一个项目,需要对货币执行一些简单的数学运算,但它以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) 我无法获得一个简单的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) android ×2
bigdecimal ×1
currency ×1
gem ×1
input-mask ×1
java ×1
json ×1
php ×1
post ×1
string ×1