我想通过此/
替换输入此m.
。
我的输入如下:
<input type="text" class="text" name="address1" id="address1" value=""/>
在输入中我写了类似street_name 5/47的内容,但在datebase中我希望它像street_name 5 m。 47
我已经尝试了:
var replit = $('input[name=address1]').val().replace("/"," m. ");
$('input[name=address1]').val(replit);
和
$('input[name=address1]').val(function(index, value) {
return value.replace('/', ' m. ');
});
但这不是我的工作,我是编程新手,请给我任何提示。
答案 0 :(得分:1)
尝试
$('input[name=address1]').val($('#input-field-id').val().replace('/', ' m. '))
答案 1 :(得分:1)
您可以使用input
事件来跟踪输入字段中的用户更改,然后每次用户更改字段时,事件都会像/
一样将字符m.
替换为字符。
$('body').on('input', 'input[name=address1]', function() {
$(this).val($(this).val().replace('/', ' m. '));
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" class="text" name="address1" id="address1" value=""/>
或者,如果您不希望用户看到您所做的替换,您可以在submit
事件中提交后立即替换斜杠:
$('body').on('submit', 'your_form_selector', function() {
$(this).val($(this).val.replace('/', ' m. '));
});
希望这有帮助。
答案 2 :(得分:0)
使用此
$('#address1').on('change',function()
{
$(this).val($(this).val().replace("/"," m. "));
});
答案 3 :(得分:0)
试试这个
$(document).ready(function(){
$('input[name=preco]').blur(function(){
var value = $(this).val();
$(this).val(value.replace('/','m. '));
});
});
答案 4 :(得分:0)
这是一个显示您的解决方案有效的小提琴:https://jsfiddle.net/e7n38wjz/2/ 如果这是你想要的,请告诉我。你知道你在使用什么JQuery版本吗?这个JSFiddle被设置为使用JQUERY 1.6.4。
以下是代码:
<input type="text" class="text" name="address1" id="address1" value="street_name 5/47"/>
<br>
<input type="text" class="text" name="address2" id="address1" value=""/>
// JS
var replit = $('input[name=address1]').val().replace("/"," m. ");
$('input[name=address2]').val(replit);
答案 5 :(得分:0)
您的两个示例都有效。请参见此处:https://jsfiddle.net/zreeLzo4/和此处:https://jsfiddle.net/q6awd8ng/
所以你需要更好地描述“不工作”对你意味着什么。你不期望会发生什么?你没想到会发生什么?
有一点需要注意:如果您提供字符串作为匹配器而不是正则表达式,则对字符串使用replace
只会替换匹配的第一个实例。使用带有全局标志的正则表达式替换所有实例:
var startString = 'street_name 5/47 something/else';
var endString = startString.replace(/\//g," m. ");
console.log(endString); // <- street_name 5 m. 47 something m. else
答案 6 :(得分:0)
如果您希望只有数据库中的条目应使用'm'而不是'/',那么您应该考虑在将数据写入数据库的任何位置更改输入值。您应该考虑以下列方式使用.submit()事件:
<script>
$(document).ready(function(){
$("#detailForm").on("submit", function(){
var value = $('input[name=address1]').val();
value = value.replace("/", " m. ");
$('input[name=address1]').val(value);
});
});
</script>