Solved

ASP.Net change radio button via javascript from onblur attribute

Posted on 2009-07-09
6
1,013 Views
Last Modified: 2012-05-07
Please help. I have a radio button group with two buttons and one text box. If the user clicks into and then out of the text box I want to check if the user has changed the value from the default (which is 0) and if the user has changed the value I want the radio button to automatically switch to yes (which is the second item in the radio button group index).

I added the onblur attribute to my textbox and have tried to get the javascript going with all sorts of methods to no avail...

tbxBid.Attributes.Add("onblur", String.Format("CheckBoxChange(this.value,{0},{1});", tbxBox.ClientID, rdbGroup.ClientID))
 

    <script type="text/javascript">

        function CheckManualEntry(value, txtBoxName, rdbName) {

            var old_price = txtBoxName.getAttribute("value");

            var rb = document.getElementsByName(rdbName);

            rb[1].checked = true;

        }

    </script>

Open in new window

0
Comment
Question by:mrferrari
  • 2
  • 2
  • 2
6 Comments
 
LVL 39

Expert Comment

by:Kyle Abrahams
ID: 24817957

set your autopostback to true.
add an ontextchanged event handler.
AJAX it.
0
 

Author Comment

by:mrferrari
ID: 24817975
I want to use javasciprt. this is really small and simple. i cant figure it out though.

I don't want the page to autopostback...
0
 
LVL 39

Expert Comment

by:Kyle Abrahams
ID: 24818103
http://dotnetslackers.com/articles/aspnet/JavaScript_with_ASP_NET_2_0_Pages_Part1.aspx

tbxBid.Attributes.Add("onblur",   PASTE_FUNCTION_HERE)

0
How to improve team productivity

Quip adds documents, spreadsheets, and tasklists to your Slack experience
- Elevate ideas to Quip docs
- Share Quip docs in Slack
- Get notified of changes to your docs
- Available on iOS/Android/Desktop/Web
- Online/Offline

 
LVL 20

Expert Comment

by:ddayx10
ID: 24819717
I don't understand the scope beyond just the basics you outlined. I was a little confused by your attribute assignment in the code behind because you were calling on ID's that you hadn't mentioned in your question (tbxBid and tbxBox). All that is to say I may have missed the mark because I had to simplify without having more information...

Anyway this should give you an idea of how to begin managing the situation. I just wrote something that addresses the very specific things you mentioned. Of course I imagine you have a bigger scope and will have to update it accordingly...
0
 
LVL 20

Accepted Solution

by:
ddayx10 earned 500 total points
ID: 24819725
didn't mean to post that (just hit the enter key on accident)...see snippet
****ASPX CODE****

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 

<html xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">

    <title>Change RadioButton</title>

    <script type="text/javascript">

		function CheckBoxChange(txtBx, rblID)

		{

			if(txtBx.value != '0')

			{

				var rblParent = document.getElementById(rblID);

				var rbl = rblParent.getElementsByTagName('input');

				rbl[0].checked = true;

			}

		}

    </script>

</head>

<body>

    <form id="form1" runat="server">
 

		<span>Default Text Box</span>

		<asp:TextBox ID="tbxBid" runat="server" Text="0" />
 

		<asp:RadioButtonList ID="rdbGroup" runat="server">

			<asp:ListItem Value="0" Text="Yes" />

			<asp:ListItem Value="1" Text="No" />

		</asp:RadioButtonList>

		

		

    </form>

</body>

</html>
 
 

****CODE BEHIND****

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
 

        If Not IsPostBack Then

            'Keep in mind that if you are using an asp:radiobuttonlist then the tdbGroup.clientID you are sending below

            'is actually a table, and you have to use that to get at the radiobuttons inside

            tbxBid.Attributes.Add("onblur", String.Format("CheckBoxChange(this,'{0}');", rdbGroup.ClientID))

        End If
 

    End Sub

Open in new window

0
 

Author Comment

by:mrferrari
ID: 24825248
bingo bango... that works great. thanks so much...
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Suggested Solutions

Title # Comments Views Activity
Detecting robots? 5 34
jQuery animation faster 1 16
getting id from database 5 24
angularls and plnkr 14 17
User art_snob (http://www.experts-exchange.com/M_6114203.html) encountered strange behavior of Android Web browser on his Mobile Web site. It took a while to find the true cause. It happens so, that the Android Web browser (at least up to OS ver. 2.…
JavaScript can be used in a browser to change parts of a webpage dynamically. It begins with the following pattern: If condition W is true, do thing X to target Y after event Z. Below are some tips and tricks to help you get started with JavaScript …
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…

707 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

14 Experts available now in Live!

Get 1:1 Help Now