jQuery - 如何通过更改另一个元素的值来修改文本输入值

时间:2014-02-13 20:23:40

标签: javascript jquery

我搜索过,但找不到任何与我正在尝试做的事情相符的事情。

所以我有一个文本输入,旁边有数字输入。我想要做的是在更改数字输入时修改文本输入的值。但我不想完全取代这个价值。

这基本上就是我现在所拥有的:

<input id='field_4' name='4' value='64_to_74_weight_3'/>
<input id='field_4-weight' type='number' min='1' max='5' value='3' data-for='#field_4' />

我要做的只是更改重量_ 后的数字,以对应数字输入所选择的数字。我知道我可以通过使用slice(-1)来获取最后一个字符,但我无法在保留文本输入值的其余部分时更改它。

有人可以帮忙吗?谢谢

编辑: 我曾经使用类似下面的东西并认为它会工作,但想到jQuery会更好,但我无法让它在jsFiddle上工作。

function updateInput(weight){
    document.getElementById('field_" . $filter->id . "').value.slice(-1) = weight;
}

1 个答案:

答案 0 :(得分:0)

$("#field_4-weight").on('change', function() {
    var txtField = $("#field_4"),
        txt = txtField.val();
    txtField.val(txt.slice(0, txt.length-1) + $(this).val());
});