2015-05-16 2 views
0

OK Сдаюсь, время м чаепития, почему я могу видеть предупреждение со значением я хочу, но я не могу изменить значение в поле ввода на страницеJquery не может обновить значение окна ввода

С кодом ниже он заметно меняет значение только тогда, когда появляется предупреждение. Я нажимаю OK на предупреждении, и значение возвращается к старому значению. Если я не удалить предупреждения, ничего не происходит, сумасшедшее эого

$("#SIC").focusout(function() { 
     var sVal = $('#SIC').val(); 

     sVal = sVal.substr(0,sVal.indexOf(' ')); 

     $('#SIC').val(sVal); 

     alert(sVal); 

    }).click(function (e) { 

     e.stopPropagation(); 
     return true; 
    }); 



@Html.TextBox("SIC", Model.SIC, new { @class = "typeahead form-control", type = "text", placeholder = "SIC code", rel = "tooltip", autocomplete = "off", title = "Enter SIC, i.e. '1630'" }) 
+1

вы можете PLS добавить HTML-код? –

+0

Предупреждает ли это о правильном значении, которое вы хотите обновить в поле ввода? – redelschaap

+1

Работает: http://jsfiddle.net/Lxb6rx16/ –

ответ

-1

Попробуйте - вар SVAL = $ ('# SIC') Вал().

sVal = sVal.substr(0,sVal.indexOf(' ')); 

    $('#SIC').html(sVal); 

Обновленный ответ:

<input type="text" id="SIC"> 

$(document).ready(function() { 
    alert('value will change'); 
    $("#textBox").val("New value") 
}) 

Это работает.

+1

У вас есть пример HTML в котором это будет работать? – David

+0

Позвольте мне попробовать. В идеале $ («id»). Html («новый html») заменит существующий – Waqar

+0

Ссылка на jsFiddle: https://jsfiddle.net/fynsz0w6/ – Waqar

0

ваш код хорошо, как я вижу все работает отлично, единственное, что смущает вас эта линия: **sVal = sVal.substr(0,sVal.indexOf(' '));**

На этой линии вы хотите получить подстроку входного значения от 0 позиции до положение, что есть пространство ''. Но если ваше входное значение не имеет места, вы ничего не получите.

Я сделал пример jsfiddle, и я положил: value = "Hello World", и в результате вы получите слово Hello как новое значение ввода.

нажмите на поле ввода, а затем нажмите вкладку, чтобы выполнить событие.

jsfiddle: http://jsfiddle.net/tornado1979/997ufota/

$("#SIC").focusout(function() { 
    var sVal = $('#SIC').val(); 

    sVal = sVal.substr(0,sVal.indexOf(' '));//all the secret is here. 

    $('#SIC').val(sVal); 

    alert(sVal); 
}).click(function (e) { 

    e.stopPropagation(); 
    return true; 
}); 

надежда помогает удачи

+0

Это не пространство, я обновил свой пост. Значение устанавливается, но возвращается к старому значению. Добавление оповещения позволяет мне видеть, как это происходит. Его, как я хочу, чтобы сохранить код, который у меня есть, но не может, потому что нужно проявлять осторожность – John

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