2012-08-14 57 views
0

我有asp:標籤來自數據庫的手機字段綁定。我需要添加什麼破折號,使手機格式的一樣,而不是999-999-9999 99999999999. 我嘗試類似的東西,但它不工作:通過jquery添加破折號到asp:標籤手機字段

$(document).ready(function() 
    num = $('#<%=HomePhone.ClientID %>').innerText; 
    parts = [num.slice(0,3),num.slice(3,6),num.slice(6,10)]; 
    fNum = parts[0]+"-"+parts[1]+"-"+parts[2]; 
    num = fNum; 
}); 
+0

做它的服務器上!客戶端是一個不好的地方。 – epascarello 2012-08-14 14:10:09

+0

首先,你的'$(document).ready(function()'缺少一個左括號 – timothyclifford 2012-08-14 14:20:56

+0

我不能在服務器上這樣做,因爲這個數據被很多控件使用,它只需要顯示,然後回答下面from timothyclifford is amazing。反正感謝所有! – 2012-08-14 14:33:42

回答

0

HTML:

<p id="textbox">99999999999</p> 

的Javascript:

$(function() { 
    var num = $('#textbox').html(); 
    var parts = [num.slice(0, 3), num.slice(3, 6), num.slice(6)]; 
    var fNum = parts[0] + "-" +parts[1] + "-" + parts[2]; 
    $('#textbox').html(fNum); 
});​ 

小提琴:

http://jsfiddle.net/timothyclifford/h9ZCR/

+0

太棒了!非常感謝! – 2012-08-14 14:23:06

0

你的代碼改成這樣:

$(document).ready(function() { 
    num = $('#<%=HomePhone.ClientID %>').text(); // jQuery does not know innerText 
    parts = [num.slice(0,3),num.slice(3,6),num.slice(6,10)]; 
    fNum = parts[0]+"-"+parts[1]+"-"+parts[2]; 
    //num = fNum; // setting a variable's value does not change value of your text box 
    $('#<%=HomePhone.ClientID %>').text(fNum); // set the value using jQuery 
});