Hi,
One more question related to this html.

How do I distinguish between the two "Add" buttons?
Thanks,
Manish


Manish Sapariya wrote:
> Hi,
> Here is one more html.
>
> ----------
> $ie.frame("mainFrame").table(:id, /tblMain/i).cells.each { |l|
>    if l.text_field(:name, "hostName").exists? then
>        puts "Flashing input box\n"
>       l.text_field(:name, "hostName").flash
>       end
> }
> Flashing input box
> Flashing input box
> Flashing input box
> Flashing input box
> Flashing input box
> 0
> ---------
>
> irb says it found the field five times, but the html source has it listed
> only once. It however flashesh the same input field.
>
> Can somebody explain.
> Thanks,
> Manish
>
> ------------------------------------------------------------------------
>
>
>
>
>
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
> <html><head>
> <meta http-equiv="Content-Type" content="text/html; 
> charset=iso-8859-1"><title>iManager</title>
>
> <link href="styles/c1.css" rel="stylesheet" type="text/css">
> <link href="styles/css.css" rel="stylesheet" type="text/css">
> <link href="styles/c01.css" rel="stylesheet" type="text/css">
> <link href="styles/ddmenu.css" rel="stylesheet" type="text/css">
> <link href="styles/temp.css" rel="stylesheet" type="text/css">
> <style type="text/css">
> .dTree * IMG { border:0; }
> .exampleFormat { color:#003399; }
> .errorFormat { color:#cc0000; }
> #alias_type_format TT SPAN { background-color:#ECF0F4; padding:0 3px }
> </style>
> <!-- css styles end -->
>
> <script language="javascript"> var imageUrl ="images/"; </script>
> <!-- include js begin -->
>
> <script language="javascript" src="js/ddmenu"></script><!-- calendar code --->
> <script language="javascript" src="js/popcalendar"></script>
> <script language="javascript" src="js/listcopyitems.js"></script>
> <script language="javascript" src="js/temp.js"></script>
> <script language="javascript" src="js/treejs.js"></script>
> <script language="javascript" src="js/retreef.js"></script>
> <script language="javascript" src="js/dtree.js"></script>
> <script language="javascript">
> /*
>               label= (match pattern) ^^ [+|-] ^^ (example format)
>                                               + = replace all whitespaces 
> with line break
>                                               - = replace all spaces with 
> single space, keep the linebreaks
> */
>
> var formatUserInputBox = true;
>
> function getSelectedItemType(o)
> {
>       var selectedIndex = -1;
>       var selected = false;
>       for(var i=0; i<o.options.length;i++)
>       {
>               if(o.options[i].selected) {
>                       var s = o.options[i];
>                       
> document.getElementById('alias_selected_item_type').innerHTML = 
> s.value.substring(s.value.indexOf(":")+1).replace(/_/g," ");
>                       break;
>               }
>       }
>       
> }
>
> function Trim(str)
> {
>       var singleSpacing = (Trim.arguments.length==2);
>       if(typeof(str)=='object')
>       {
>        if(!str.value) return;
>               if(singleSpacing)
>                       str.value = str.value.replace(/^\s+/g, 
> '').replace(/\s+$/g, '');
>               else
>                       str.value = str.value.replace(/^\s+/g, 
> '').replace(/\s+$/g, '').replace(/ {2,}/g, ' ');
>       }
>       else
>       {
>               if(singleSpacing)
>                       return str.replace(/^\s+/g, '').replace(/\s+$/g, '');
>               else
>               {
>                       return str.replace(/^\s+/g, '').replace(/\s+$/g, 
> '').replace(/ {2,}/g, ' ');
>               }
>       }
> }
>
> function resetFormatStyle()
> {
>       document.getElementById('alias_type_format').className='exampleFormat';
>       showFormat(document.getElementById('SELECT_ALIAS_ITEM_TYPE'));
> }
>
> function testContent(v)
> {
>       if (v==null || v.length=='undefined') return false;
>       //window.status = v.length;
>       var aliastype = document.getElementById("SELECT_ALIAS_ITEM_TYPE");
>       var aliastypeInd = aliastype.selectedIndex;
>       var ptn = aliastype.options[aliastypeInd].label;
>       var ptn = ptn.substring(0, ptn.indexOf(" ^^ "));
>       var re = new RegExp(ptn, "g");
>
>       v = Trim(v);
>
>       if(!v.match(re))
>       {
>               document.getElementById("alias_type_format").className = 
> "errorFormat";
>               return false;
>       }
>       
>       return true;
> }
>
> function showFormat(o)
> {
>       var i = o.selectedIndex;
>       var s = o.options[i].label;
>       var t = s.substring(s.lastIndexOf(" ^^ ")+4);
>       document.getElementById("alias_type_format").innerHTML = 
> "example:<br><tt>" + unescape(t) + "</tt>";
>       document.forms[0].INPUT_ALIAS_ITEM_LIST.focus();
> }
>
> function transformAll(strTmp, trans)
> {
>       var arr = trans.split("~");
>       var evalStr = "";
>       for(var i=0; i<arr.length; i++)
>       {
>               evalStr = "strTmp=strTmp.replace("+arr[i]+")";
>               eval(evalStr);
>       }
>       return strTmp;
> }
>
> function transformSpaces(str, trans)
> {
>       var pattern = "";
>       var strTmp = "";
>       if(typeof(str)=='object')
>       {
>               if (str.value) strTmp = str.value;
>       }
>       else
>               strTmp = str;
>       var x = '@ = @.replace(/{}/g,"{}")';
>       x = x.replace(/@/g,"strTmp");
>       if(trans=="-" || trans=="+")
>       {
>               if(trans=="+")
>                       x = x.replace(/\{\}/,"\\s+").replace(/\{\}/,"\\r\\n");
>               else
>               {
>                       x = x.replace(/\{\}/," {2,}").replace(/\{\}/," 
> ").replace(/\r\n\s+/g,"\\r\\n").replace(/\s+\r\n/g,"\\r\\n");
>               }
>               eval(x);
>               return strTmp; 
>       }
>       else
>               if(trans.length>0) return transformAll(strTmp, trans);
>               
>       return "";
> }
>
> function getStrTransformation(o)
> {
>       var s = o.options[o.selectedIndex].label;
>       if(s.match(/\s+$/)) formatUserInputBox = false; else formatUserInputBox 
> = true;
>       var re = new RegExp(/^.* \^\^ (.+) \^\^ .*$/);
>       if(s.match(re))
>       {
>               s = s.replace(re,"$1");
>               return s;
>       }
>       return null;
> }
>
> function addToAlias()
> {
>       var aliaslist = document.getElementById("LIST_ALIAS_ITEMS");
>       if( (addToAlias.arguments.length==1 && addToAlias.arguments[0]==true) )
>       {
>               /*                     Add another alias item                   
>     */
>               var inputaliasitems = 
> document.getElementById("SELECT_EXISTING_ALIAS_ITEM");
>               var i = inputaliasitems.selectedIndex;
>               var sType = "EXISTING_ALIAS-";
>               var sValue = inputaliasitems.options[i].text;
>
>               if( !itemInTargetList( aliaslist, new Option( sType + " " + 
> sValue, sType + sValue ) ) )
>                       insertItemIn( aliaslist, sType + " " + sValue, sType + 
> sValue );
>               else
>                       alert('item is already in the list');
>       }
>       else
>       {
>               /*                     Add item, not an alias item              
>          */
>               var inputaliasitems = 
> document.getElementById("INPUT_ALIAS_ITEM_LIST");
>               var aliastype = 
> document.getElementById("SELECT_ALIAS_ITEM_TYPE");
>               var aliastypeInd = aliastype.selectedIndex;
>               var sType = aliastype.options[aliastypeInd].value + "-";
>               var sValue = inputaliasitems.value;
>
>               if(Trim(sValue).length<1) { alert('Please paste or enter IP 
> Address to match the selected Attribute Type'); return; }
>               var strTransformation = getStrTransformation(aliastype);
>               if( strTransformation ) { sValue = transformSpaces(sValue, 
> strTransformation); }
>               sValue = Trim(sValue);
>               if( formatUserInputBox ) inputaliasitems.value = sValue;
>
>               if ( testContent(sValue) )
>               {
>                       var arrItems = sValue.split("\r\n");
>                       var n = arrItems.length;
>                       for(var i=0; i<n; i++)
>                       {
>                               if( !itemInTargetList( aliaslist, new 
> Option(sType+" "+arrItems[i], sType+arrItems[i])) )
>                               {
>                                       insertItemIn( aliaslist, sType+" 
> "+arrItems[i], sType+arrItems[i] );
>                                       arrItems[i]=null;
>                               }
>                       }
>                       inputaliasitems.value = sValue = "";
>                       for(var i=0; i<n; i++)
>                               if(arrItems[i]!=null) sValue += arrItems[i] + 
> "\r\n";
>
>                       if(sValue.length!=0) { inputaliasitems.value = sValue; 
> alert("items already exist in the list"); }
>
>               }
>               else
>               {
>                       alert('Incorrect IP Address format encountered.\nPlease 
> paste or enter IP Address to match the selected Attribute Type.');
>                       inputaliasitems.focus();
>               }
>       }
> }
> function SelectAll(Selectbox) {
>       for (var i=0; i<Selectbox.length; i++)
>       Selectbox[i].selected = true
> }
>
> </script>
> </head>
>
>
> <body>
> <div id="infobar">
>    <div class="rsummaryh" style="padding:6px;">&nbsp;&nbsp;Alias Groups  
> </div>
>
>    <div id="breadcrumb"><a href="javascript:void(0)">Home</a> &gt; Admin &gt; 
>  Alias Groups &gt; Add New Alias </div>
>
> </div>
> <div id="mcontent">
>    <table id="tblMain" width="100%"  border="0" cellspacing="0" 
> cellpadding="0">
>       <tr>
>         <td id="dnavCol" width="160" valign="top" style="border-right:8px 
> solid white">
>             <!-- LEFT NAV -->
>
>                <div class="btnopenldap">
>                   <div id="listname" onClick="toggleList(this.parentNode)" 
> onMouseOver="this.style.color='#006699'" 
> onMouseOut="this.style.color='#8C8C8C'">Alias Groups</div>
>
>                   <div id="nitemlist" class="oVisible">
>                      <div class="btnaddldap" 
> onClick="location.href='/devicemgr/RePreCreateAlias.do'" 
> onMouseOver="this.style.color='#006699'" 
> onMouseOut="this.style.color='#8C8C8C'">Add New Alias</div>
>                               
>                       
>                      
>                </div>
>
>           <div style="height:44px;width:100%">&nbsp;</div></td>
>          <td width="100%" valign="top" id="mCol"><table width="100%"  
> border="0" cellpadding="0" cellspacing="0" class="tbltabs">
>            <tr>
>              <td class="tabuppr"><table width="100%"  border="0" 
> cellspacing="0" cellpadding="0">
>                  <tr>
>                    <td nowrap class="tabactivebtn2" 
> style="white-space:nowrap;width:140px">Alias Groups</td>
>                                                                               
> <td>&nbsp;</td>
>                  </tr>
>
>              </table></td>
>            </tr>
>            <tr>
>              <td class="tablwr"><img src="images/spacer.gif" width="1" 
> height="3"></td>
>            </tr>
>          </table>
>
>          <table width="100%"  border="0" cellspacing="10" cellpadding="0">
>               
>
>                <tr>
>                   <td>   <form name="ReAliasCreateActionForm" method="post" 
> action="/devicemgr/ReCreateAlias.do">
>                                                <input type="hidden" 
> name="methodToCall" value="createAlias">
>                      <table width="100%"  border="0" cellspacing="0" 
> cellpadding="0">
>                         <tr>
>                            <td width="1%">&nbsp;</td>
>                           <td width="93%"><table height="15" border="0" 
> cellpadding="0" cellspacing="0">
>                                  <tr>
>                                     <td class="navbg">&nbsp;</td>
>                                  </tr>
>                               </table>
>                              <div class="navbg" style="margin:5px 10px 6px 
> 10px"><strong>New Alias</strong></div>
>
>                              <table width="90%"  border="0" cellpadding="0" 
> cellspacing="0" class="tbluserform">
>                                <tr>
>                                  <td width="13" class="tbluformtl"><img 
> src="images/spacer.gif" width="13" height="13"></td>
>                                  <td class="tdt"><img src="images/spacer.gif" 
> width="1" height="1"></td>
>                                  <td width="13" class="tbluformtr"><img 
> src="images/spacer.gif" width="13" height="13"></td>
>                                </tr>
>                                <tr>
>                                  <td class="tdl"><img src="images/spacer.gif" 
> width="1" height="1"></td>
>                                  <td><table width="100%" border="0" 
> cellspacing="6" cellpadding="0">
>
>                                    
>                                    <tr>
>                                      <td valign="top" align="right">Alias 
> name:</td>
>                                      <td valign="top"><input type="text" 
> name="hostName" size="4" value="" style="width:100%"></td>
>                                      <td width="250" height="450" rowspan="5" 
> valign="top" bgcolor="#ECF0F4" style="border-left:1px solid #7F9DB9; 
> padding-left:6px" align="center"><table width="100%" height="24" border="0" 
> cellpadding="0" cellspacing="0">
>                                        <tr>
>                                          <td id="alias_selected_item_type" 
> style="font-family:courier new, courier, mono">Items added</td>
>                                        </tr>
>                                      </table>
>                                                               
>
>                                        <select name="selectedAliases" 
> multiple="multiple" size="40" onchange="getSelectedItemType(this)" 
> id="LIST_ALIAS_ITEMS" style="width:100%;height:400px; border:1px solid 
> #ccc;padding:4px"></select>
>                                        <div style="white-space:nowrap"><img 
> src="images/btndelete.gif" width="66" height="22" 
> onClick="document.getElementById('alias_selected_item_type').innerHTML=' 
> ';if(confirm('Delete this item from the list?')) 
> deleteSelectedItems(document.getElementById('LIST_ALIAS_ITEMS'));">&nbsp;&nbsp;&nbsp;
>                                                                               
>                                                                          <img 
> src="images/btndeleteall.gif" width="83" height="22" 
> onClick="document.getElementById('alias_selected_item_type').innerHTML=' 
> ';if(confirm('Delete all items in the list?')) 
> deleteAllItems(document.getElementById('LIST_ALIAS_ITEMS'));"></div></td></tr>
>                                    <tr>
>                                      <td valign="top" 
> align="right">Description:</td>
>                                      <td valign="top"><input type="text" 
> name="hostDesc" size="4" value="" style="width:100%"></td>
>                                    </tr>
>
>                                    <tr>
>                                      <td valign="top" 
> align="right">&nbsp;</td>
>                                      <td valign="top">&nbsp;</td>
>                                    </tr>
>                                    <tr>
>                                      <td><img src="images/spacer.gif" 
> width="1" height="1"></td>
>                                      <td bgcolor="#D6D6D6"><img 
> src="images/spacer.gif" width="1" height="1"></td>
>                                    </tr>
>                                    
>                                    <tr>
>
>                                      <td valign="top"><table width="100%" 
> border="0" cellspacing="0" cellpadding="0">
>                                        <tr>
>                                          <td height="24" 
> align="right">Attribute Type:</td>
>                                        </tr>
>                                        <tr>
>                                          <td height="24">&nbsp;</td>
>                                        </tr>
>                                        <tr>
>
>                                          <td height="24" 
> align="right">&nbsp;</td>
>                                        </tr>
>                                        <tr>
>                                          <td height="24" align="right">Enter 
> or paste values: </td>
>                                        </tr>
>                                        <tr>
>                                          <td height="24">&nbsp;</td>
>                                        </tr>
>
>                                        <tr>
>                                          <td height="24">&nbsp;</td>
>                                        </tr>
>                                        <tr>
>                                          <td height="24">&nbsp;</td>
>                                        </tr>
>                                      </table></td>
>                                      <td valign="top"><table width="100%" 
> border="0" cellspacing="0" cellpadding="0">
>                                        
>
>                                        <tr>
>
>                                          <td width="6" height="24" 
> valign="top"><select id="SELECT_ALIAS_ITEM_TYPE" 
> name="SELECT_ALIAS_ITEM_TYPE" onChange="showFormat(this)">
>                                            <option value="IP" 
> label="^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)((\r\n)+(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))*$
>  ^^ + ^^ 64.38.1.1 ">IP</option>
>                                            <option value="IP_SUBNET" 
> label="^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)/([1-9]|1\d|2\d|3[0-2])((\r\n)+(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)/([1-9]|1\d|2\d|3[0-2]))*$
>  ^^ + ^^ 64.38.1.1/8 ">IP/Subnet Mask</option>
>                                            <option value="IP_RANGE" 
> label="^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)-(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(\s+(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)-(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))*$
>  ^^ + ^^ %3Cspan%3E64.230.1.1%3C/span%3E-%3Cspan%3E64.230.1.1%3C/span%3E ">IP 
> Range</option>
>                                          </select></td>
>                                        </tr>
>                                        <tr>
>
>                                          <td id="alias_type_format" 
> height="30" valign="bottom" class="exampleFormat">^... please choose type</td>
>                                        </tr>
>                                        <tr>
>                                          <td height="24" valign="top" 
> align="right"><img src="images/btnAddgroup.gif" alt="Add &gt;&gt;" width="64" 
> height="21" onClick="addToAlias()"></td>
>                                        </tr>
>                                        <tr>
>                                          <td height="24" 
> valign="top"><textarea name="INPUT_ALIAS_ITEM_LIST" rows="10" 
> id="INPUT_ALIAS_ITEM_LIST" style="width:100%" title="paste or type data here" 
> onBlur="Trim(this);testContent(this.value)" onFocus="resetFormatStyle()">
> </textarea></td>
>                                        </tr>
>
>                                        <tr>
>                                          <td height="24" 
> valign="top">&nbsp;</td>
>                                        </tr>
>                                        <tr>
>                                          <td valign="top" 
> bgcolor="#D6D6D6"><img src="images/spacer.gif" width="1" height="1"></td>
>                                        </tr>
>                                        
>                                        
>                                      </table>
>                                        <table width="100%" border="0" 
> cellspacing="0" cellpadding="0">
>                                          <tr>
>
>                                            <td height="24">Existing Alias 
> Groups</td>
>                                            <td width="70">&nbsp;</td>
>                                          </tr>
>                                          <tr>
>                                            <td><select name="aliases" 
> id="SELECT_EXISTING_ALIAS_ITEM"></select></td>
>                                            <td width="70" align="right"><img 
> src="images/btnAddgroup.gif" alt="Add &gt;&gt;" width="64" height="21" 
> onClick="addToAlias(true)"></td>
>                                          </tr>
>                                          <tr>
>
>                                            <td>&nbsp;</td>
>                                            <td>&nbsp;</td>
>                                          </tr>
>                                        </table></td>
>                                    </tr>
>                                                                               
>                                                                  
>                                    
>                                  </table>
>                                  <table width="100%"  border="0" 
> cellspacing="6" cellpadding="0">
>                                      
>
>                                      <tr bgcolor="#D6D6D6">
>                                        <td width="120" colspan="2" 
> bgcolor="#D6D6D6"><img src="images/spacer.gif" width="1" height="1"></td>
>
>                                      </tr>
>                                    </table>
>                                      <table width="100%"  border="0" 
> cellspacing="6" cellpadding="0">
>                                        
>                                        <tr>
>                                          <td>&nbsp;</td>
>                                          <td width="55%">&nbsp;</td>
>                                        </tr>
>                                        <tr>
>                                          <td colspan="2" 
> align="center"><input type="image" name="submit" src="images/savexbtn.gif" 
> onclick="SelectAll(selectedAliases);" title="Save" 
> alt="Save">&nbsp;&nbsp;&nbsp;<a href="/devicemgr/RePreShowAliasList.do"><img 
> src="images/cancelbtn.gif" width="103" height="21" border="0"></a></td>
>
>                                        </tr>
>                                    </table></td>
>                                  <td class="tdr"><img src="images/spacer.gif" 
> width="1" height="1"><img src="images/spacer.gif" width="1" height="1"><img 
> src="images/spacer.gif" width="8" height="8"></td>
>                                </tr>
>                                <tr>
>                                  <td class="tbluformbl"><img 
> src="images/spacer.gif" width="13" height="13"></td>
>                                  <td class="tdb"><img src="images/spacer.gif" 
> width="13" height="13"></td>
>                                  <td class="tbluformbr"><img 
> src="images/spacer.gif" width="13" height="13"></td>
>                                </tr>
>
>                              </table></td>
>                         </tr>
>                      </table>
>                   </form></td>
>                </tr>
>            </table></td>
>       </tr>
>    </table>
> </div>
>
> </body>
> </html>
>
>   
> ------------------------------------------------------------------------
>
> _______________________________________________
> Wtr-general mailing list
> Wtr-general@rubyforge.org
> http://rubyforge.org/mailman/listinfo/wtr-general

_______________________________________________
Wtr-general mailing list
Wtr-general@rubyforge.org
http://rubyforge.org/mailman/listinfo/wtr-general

Reply via email to