PDA

View Full Version : ارسال ID تکست باکس درون گریدویو به جاوااسکریپت



sarasara
یک شنبه 21 مرداد 1386, 14:29 عصر
سلام، من په گریدویو دارم که توی اون یه <asp:textBox دارم، و یه <asp:ImageButton که می خوام هرگاه این ImageButton فشار داده شد یک تابع حاوااسکریپت صدا زده بشه که ID این TextBox رو بگیره و یه عملیاتی انجام بده، با توجه با اینکه تعداد TextBox های درون گریدام مشخص نیست چطوری باید ID این TextBox ها رو به دست بیارم و به تابع جاوااسکرپتم پاس بدم؟

shahroozj
یک شنبه 21 مرداد 1386, 14:48 عصر
رویداد item bound را صدا بزنید و به هر کدام از buttonها id مربوطه را اختصاص بدهید

essa_61
یک شنبه 21 مرداد 1386, 15:22 عصر
سلام
کافی هستش توی source مثل زیر که من نوشتم اسم event را بنویسید(onKeyPress) و نام تابع جاوا اسکریپت را هم بنویسید(FKeyPress()) و به ایراد دات نت هم توجهی نکن خودش توی موقع اجرا درست میشه




<asp:TextBoxID="TextBox1"runat="server"dir="rtl"onKeyPress=FKeyPress();onKeyDown=FKeyDown()Font-Bold="True"Font-Size="X-Large"Width="274px"></asp:TextBox></div>

sarasara
دوشنبه 22 مرداد 1386, 08:09 صبح
رویداد item bound را صدا بزنید و به هر کدام از buttonها id مربوطه را اختصاص بدهید
این رویداد رو کجا باید صدا بزنم، درضمن من به ID تکسک باکسها نیاز دارم.

shahroozj
دوشنبه 22 مرداد 1386, 08:51 صبح
این یک مثال برای تخصیص دادن یک Javascript به کنترول hyperlink در datagrid

Private Sub dgMailList_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles dgMailList.ItemDataBound
If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Then
If e.Item.Cells(0).Controls.Count > 0 Then
If TypeOf (e.Item.Cells(5).Controls(1)) Is HyperLink Then
Dim lnkDelete As HyperLink = CType(e.Item.Cells(5).Controls(1), HyperLink)
lnkDelete.Attributes("onclick") = "return confirm('آیا مطمئن هستید؟')"
End If
End If
End If
End Sub

حالا هر کنترولی که داشته باشید می توانید اینطوری بهش تابعتان را نخصیص بدید اگر خواستید ID پاس کنید اینجا می توانید این کار را انجام بدید

__H2__
دوشنبه 22 مرداد 1386, 09:25 صبح
سلام
ID کنترلرها در سمت کلایت متفاوت از ID آنها در سرور است.
شما میتوانید با خصوصیت ClientID مقدار ID را در کلایت به دست اورید و دستورات را بر اساس آن write کنید.
مثلاً در Page_Load این کد را بنویسید (امتحان نکردم ولی احتمالاً صحیح تایپ شده!)


Me.TextBox1.Attributes.Add("onchange", "return AAA(document.all('" & Me.TextBox1.ClientID & "'));")