2015-05-16 93 views
0

好吧,我放棄了,男的茶歇時間,爲什麼我可以看到我想要的值警報,但我不能頁面JQUERY不能更新輸入框的值

上更新在輸入框中的值隨着碼在它下面,只有在警報存在時才顯着改變價值。我在警報上單擊確定,該值將返回到舊值。如果我刪除警報沒有任何反應,瘋狂EHH

$("#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

你能請添加HTML代碼? –

+0

它是否提醒您想要更新輸入字段的正確值? – redelschaap

+1

它的工作原理:http://jsfiddle.net/Lxb6rx16/ –

回答

-1

試試這個 - 變種SVAL = $( '#SIC')VAL()。

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('new html')將替換現有的鏈接 – Waqar

+0

鏈接到jsFiddle:https://jsfiddle.net/fynsz0w6/ – Waqar

0

你的代碼是好的,因爲我看到一切正常,這混淆了你的唯一事情是這一行:**sVal = sVal.substr(0,sVal.indexOf(' '));**

在你想要得到的輸入值的子串線,從0位置,直到有空間的位置「。但是如果你的輸入值沒有空間,你什麼都得不到。

我做了一個jsfiddle的例子,我把:value =「Hello World」,結果你得到了單詞Hello作爲一個新的輸入值。

單擊輸入框,然後按Tab鍵執行事件。

的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