2012-04-14 45 views
1

我不太知道如何攻擊這個,基本上我有我的aspx頁面兩個HTML字段:如何從服務器端填入HTML輸入

<input type="text" name="fname" /> 
<input type="text" name="lname"/> 

現在我想從服務器端進行填充當基於從數據庫中收集了一些數據加載頁面,基本上是這樣的數據存儲在兩個屬性

public string FirstName { get; set;} 
public string LastName {get; set;} 

我如何可以傳遞這樣的屬性值到HTML的輸入ON_LOAD?

我將不勝感激。

+0

WebForms或MVC? – 2012-04-14 19:49:56

+0

對不起,這是網絡表單 – user710502 2012-04-14 19:51:20

回答

2

這裏有一種方法,假設Web表單:

<input type="text" name="fname" value="<%:FirstName%>" /> 
<input type="text" name="lname" value="<%:LastName%>" /> 

如果使用.NET 4.0之前,與<%=更換<%:

另一種方法是將輸入類型更改爲runat="server"並直接在服務器端分配值。

+0

您可能想檢查第二個輸入;) – 2012-04-14 19:50:53

+0

@jmein - 謝謝。 – Oded 2012-04-14 19:51:39

+0

@已結束非常有用。我從來不知道在「<%=」上使用「<:」。 +1! – sbhomra 2012-04-14 19:58:00

1

或者添加runat="server"到元素,那麼你可以做這樣的事情

fname.Value = FirstName; 
lname.Value = LastName; 
+0

只有當這是服務器端控制(它不是)時纔有效。 – Oded 2012-04-14 19:54:02

+0

是嗎?如果它是服務器端控件,則不需要FindControl,可以直接使用它。 – 2012-04-14 19:55:18

+0

是的。但是'FindControl'在客戶端控件上不起作用。請參閱[MSDN](http://msdn.microsoft.com/zh-cn/library/system.web.ui.control.findcontrol.aspx) - 「搜索當前命名容器的**服務器控件**與指定的id參數「。 – Oded 2012-04-14 19:56:00

0

我一直在尋找的信息是這樣的:

protected void Page_Load(object sender, EventArgs e) 
{ 
    address.Value = Request.QueryString["lat"]; 
    address1.Value = Request.QueryString["long"]; 
} 

從URL字符串取值,並把它們in a HTML input =「text」

http://localhost:64375/Map.aspx?lat=detroit&long=windsor

Enter Address A: <input runat="server" name="address" id="address" type="text" /> 
Enter Address B: <input runat="server" name="address1" id="address1" type="text" />  

感謝Ash和Oded合併的答案