Creating a Dual Purpose Login Page
The code sample for this appendix includes a login page that uses the ASP.NET Login
control for traditional login and the <object>
tag
for those who have already associated their information cards with their account. One of the
challenges with this is making sure that the <object>
tag is only invoked when the user clicks the CardSpace login
button. Since we canât have two active <form>
tags
in an ASP.NET page, I had to learn a little bit more about <object>
tags, how they are instantiated, and how to control that
instantiation with javascript.
First, I placed the <object>
tag declaration in
the header section of the HTML page. I also had to use the declare
attribute of the tag to indicate this was only a declaration so that
the CardSpace object would not be instantiated until it is referenced by the CardSpace
submit button:
<object declare id="informationCard" type="application/x-informationCard" name="informationCard" > ... </object>
Next, I created a javascript function, SelectInformationCard(
)
, that would instantiate the CardSpace object and put the value it returns into
a hidden text field:
<script type="text/javascript" language="javascript"> function SelectInformationCard( ) { var infoCardObject =document.getElementById("informationCards"); var hiddenToken = document.getElementById("hiddenXmlToken"); hiddenToken.value = infoCardObject.value; } </script>
Within the <form>
tag, I arranged the Login control and my CardSpace image button, along ...
Get Learning WCF now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.