ASP.NET中关于参数为DO对象的JavaScript方法示例

1.该方法在aspx页面里的示例代码:

 <script id="Script1" type="text/javascript">

function CallDialog() {
//获取对应控件的值
var id = document.getElementById('<%=me.hfID.ClientID %>').value;
var name = document.getElementById('<%=me.txtName.ClientID %>').value;
//将DO对象信息组成javascript对象
var objInfo = { Name: name, ID: id };
//作为参数直接传入
CallClassQueryDialog(objInfo);
}
function SetInfo(objDo) {
//将DO对象信息组成javascript对象用".属性名称"的方式获得并使用
document.getElementById('<%=me.txtName.ClientID %>').value = objDo.Name;
//将textbox的ReadOnly属性设为True
document.getElementById('<%=me.txtName.ClientID %>').setAttribute('readonly', True);
document.getElementById('<%=me.hfID.ClientID %>').value = objDo.ID;
//设置光标位置
document.getElementById('<%=me.txtCount.ClientID %>').focus();
}

</script>

 

2.该方法在aspx.vb页面里的示例代码:

 

Protected Sub Gridview1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles Gridview1.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
'将隐藏的代号变换成对应的文字并显示在相应的Label里
Dim strActiveFlag As String = CType(e.Row.FindControl("hfActiveFlag"), HiddenField).Value
Select Case strActiveFlag.Trim
Case "1"
CType(e.Row.FindControl("lblActiveFlag"), Label).Text = "停用"
Case Else
CType(e.Row.FindControl("lblActiveFlag"), Label).Text = "正常"
End Select
Dim lnkbtn As LinkButton = CType(e.Row.FindControl("btnSelect"), LinkButton)
Dim strID As String = CType(e.Row.FindControl("hfID"), HiddenField).Value
'组建DO对象
Dim objDo As String = "{Name:'" & e.Row.Cells(1).Text.Trim & "',ID:'" & strID & "',Price:'" & e.Row.Cells(3).Text & "',IsRepeat:'" & strIsRepeat & "'}"
'给LinkButton的OnClientClick事件邦定aspx页面写好的javascript方法,并传入组好的参数
lnkbtn.OnClientClick = "GetInfo(" & objDo & "); return false;"
End If
End Sub

 

posted @ 2012-02-06 13:53  ~枫~  阅读(268)  评论(0编辑  收藏  举报