2012-09-07 69 views
0

在asp.net網站,裏面的.aspx我有以下代碼呼籲Page_Load事件JavaScript函數

<script type="text/javascript"> 
    function callme(option) { 
     document.getElementById("t1").value = option; 
    } 
</script> 
<div id="content" runat="server"></div> 

<input type="text" id="t1" /> 

在隱藏文件代碼中的Page_Load

content.InnerHtml = MyClassObject.MyMethod(...); 

MyClass的

public String MyMethod(...) 
{ 
    ... //some code 
    String str1 ="<select id=\"s1\" onchange=\"callme(this.value)\">" + 
        " <option value=\"1\">One</option>"+ 
        " <option value=\"2\">Two</option>" + 
        " <option value=\"3\">Three</option>" +       
        "</select>"; 
    ... // some code 
    return str1; 

每當我從下拉列表中選擇任何選項時,它會反映它在文本框t1中的值。 但在頁面加載時,文本框保持空白。我無法使用默認值,因爲下拉列表的值在運行時發生變化。 如何在頁面加載時將下拉列表的第一個值添加到文本框t1?

+0

你是什麼意思「的下拉列表的值是在運行時改變」?他們如何改變? – codingbiz

+0

此方法「MyMethod()」連接到數據庫並從那裏獲取值。它是一種通用的方法。那就是爲什麼根據參數傳遞值構建字符串str1的變化。 –

回答

1

在你的onload功能的JavaScript你得到目前在drowdownlist選擇的值如下:

var s1 = document.getElementById("s1"); 
var selectedVal = s1.options[s1.selectedIndex].value; 
1
<script type="text/javascript"> 
function BuyG2() { 
    alert('Hai Jquery'); 
} 
</script> //jquery in sourse 
protected void Page_Load(object sender, EventArgs e) 
{ 
    ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "tmp", 
     "<script type='text/javascript'>BuyG2();</script>", false); 
} //ASP Button Click Events