2016-08-22 3 views
0

Я хочу изменить входное значение на основе выбора пользователя.Изменение входного значения на основе выбора через jquery

 <input type="number" class="minimum" name="minimum" /> 
        <div>0</div> 
        <div onclick="update('minimum')">$50,000</div> 
        <div>$100,000</div> 
        <div>$250,000</div> 
        <div>$500,000</div> 
        <div>$1,000,000</div> 
        <div>$10,000,000</div> 

Здесь у меня есть вход под названием минимум, где пользователь может выбрать значение, нажав на дивы и входного значения будет меняться.

Эта функция «как есть» обновит входное значение после нажатия на div.

 function update(field){ 
     $('input[name=minimum]').val('50000'); 

    } 

Я хочу, чтобы это было гибким для использования во всех div.

[имя = минимальное], где минимальная заменяется значением в поле передается в функцию.

val ('50000'), где заменяется значением функции, запускающей функцию.

Возможно ли это?

+0

Почему функция не использует аргумент 'field'? – Barmar

ответ

0

Удалить обработчик событий инлайн и вместо этого использовать:

$(document).ready(function() { 
    $('div').click(function() { 
    $('input[name=minimum]').val(parseInt($(this).text().replace(/[^0-9\.]+/g,""), 10)) 
    }) 
}); 

jsFiddle example

Это занимает текстовую строку, и преобразует его в номер, чтобы использовать на входе. Вероятно, вы также захотите использовать селектор более конкретно, чем $('div'), поскольку он будет нацелен на все разделы на вашей странице.

+0

Вам нужно удалить символы '' '' 'и '' из HTML, прежде чем вставлять их в значение. – Barmar

+0

@Barmar - обновлено – j08691

0

Друг показал мне, что я делаю неправильно. Я использовал (.) Против (+)

 function update(field){ 

     $('input[name=' + field + ']').val('50000'); 
     //alert (field); 
    } 

Это сейчас работает.

Смежные вопросы