使占位符%符号假装留下

时间:2016-01-28 13:38:45

标签: javascript php jquery html css

这是一个特殊的问题但是,我有一个输入字段,像这样,

<div class="<?php if(form_error('interest')!= null){echo ' has-error';} ?>">
   <h4><?php echo lang("offer_of_intrest"); ?></h4>
   <input class="form-control" type="text" value="<?php echo set_value('interest'); ?>" placeholder="1%" name="interest">
</div>

占位符显示1%,但输入只接受整数(1或2或3等等),我想要做的是以某种方式将百分号保持在占位符内,但是用户输入任何数字但保留百分号,但在提交按钮时,只应该输入数字,而不是百分号。因为在mysql中它只接受小数位。它就像给用户一个假的百分号占位符所以他们不会感到困惑,实际上在输入字段中输入1(PERCENT)。 ,我希望这是可以理解的。

3 个答案:

答案 0 :(得分:3)

由于您似乎正在使用Bootstrap,我会从占位符中删除%并使用input-groupinput-group-addon

&#13;
&#13;
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.6/css/bootstrap.css" rel="stylesheet" />
<div class="row">
  <div class="col-xs-9">
    <form class="form-inline">
      <div class="form-group">
        <label class="sr-only" for="exampleInputAmount">Percentage:</label>
        <div class="input-group">
          <input class="form-control" type="text" placeholder="1" name="interest">
          <div class="input-group-addon">%</div>
        </div>
      </div>
    </form>
  </div>
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:2)

您可以拆分字符串以拼接'%'符号,然后将其转换为int。 (感谢下面的Bob Nocraz)

$yourDecimal = rtrim($theVariable, '%');
$result = intval($yourDecimal);

答案 2 :(得分:0)

据我所知,Theres在Html中不是解决方案,但您可以在Javascript中执行此操作。

$(input).keydown(function(){
   val = $(this).val()
   val = val.slice(val.length, 1);
   val += "%";
})

也许这会起作用