That sounds like the easiest solution. Thanks for the update.

R

On 14 May 2009, at 19:39, Jian Fang wrote:

> I created a test case using your html and UI module and can re- 
> produce your error.
> Seems jQuery does have limitation/issue on the has() selector. One  
> way to work around this
> is to let Tellurium core filter out the position attribute when  
> build the has() selector.
>
> On Thu, May 14, 2009 at 12:23 PM, Jian Fang  
> <[email protected]> wrote:
> Rohan,
>
> Thanks for reporting this. Just saw the post because of the Google  
> outage.
>
> I will look into it.
>
> Mikhail, could you please add the html in the post to Tellurium test  
> page so that I
> can create a test case for it?
>
> Thanks,
>
> Jian
>
>
> On Thu, May 14, 2009 at 11:06 AM, rohanh <[email protected]> wrote:
>
> Not sure if this is a Tellurium issue or a JQuery issue but given the
> following model
>
>       Form(uid: "UserEditPrivateProfileForm", clocator: [tag: "form",
> name: "theForm", method: "post"], group: "true"){
>                /*
>               InputBox(uid: "Address1"   ,clocator: [tag: "input" ,
> type: "text"  ,name: "address1"])
>                InputBox(uid: "Address2"   ,clocator: [tag: "input" ,  
> type:
> "text"  ,name: "address2"])
>                InputBox(uid: "Address3"   ,clocator: [tag: "input" ,  
> type:
> "text"  ,name: "city"])
>                InputBox(uid: "PostCode"   ,clocator: [tag: "input" ,  
> type:
> "text"  ,name: "postcode"])
>                InputBox(uid: "Telephone"  ,clocator: [tag: "input" ,  
> type:
> "text"  ,name: "tel"])
>                InputBox(uid: "Email"      ,clocator: [tag: "input" ,  
> type:
> "text"  ,name: "email"])
>                Selector(uid: "Gender"     ,clocator: [tag: "select",
> name: "gender"])
>                InputBox(uid: "Mobile"     ,clocator: [tag: "input" ,  
> type:
> "text"  ,name: "Mobile"])
>               */
>               List(uid: "Fields" , clocator: [tag: "div", class:
> "test", position: "2"], separator: "div") {
>                    Container(uid: "all") {
>                      InputBox(uid: "item"    , clocator: [:])
>                      Selector(uid: "selector", clocator: [:])
>                    }
>               }
>                SubmitButton(uid: "Submit" ,clocator: [tag: "input" ,  
> type:
> "submit",name: "submit"], respond: ["click", "mouseOut", "mouseOver"])
>        }
>
>
> a call to getListSize("UserEditPrivateProfileForm.Fields") generates
> the following JQuery selector:
>
> 5:11:00.631 INFO - Command request: getListSize[jquery=#main form
> [name=theForm][method=post]:has(div.test:eq(1), input[type=submit]
> [name=submit]) div.test:eq(1), div] on session
> 65c1e3d5c462489cb6402b2d663a99ef
> 15:11:00.647 INFO - Got result: ERROR: Element jquery=#main form
> [name=theForm][method=post]:has(div.test:eq(1), input[type=submit]
> [name=submit]) div.test:eq(1) not found on session
> 65c1e3d5c462489cb6402b2d663a99ef
>
> The problem with this seems to be the :eq(1) within the has(). If I
> change the selector from
>
> #main form[name=theForm][method=post]:has(div.test:eq(1), input
> [type=submit][name=submit]) div.test:eq(1)
>
> to
>
> #main form[name=theForm][method=post]:has(div.test, input[type=submit]
> [name=submit]) div.test:eq(1)
>
> The correct List div is returned....
>
> Maybe this is a restriction with JQuery but I am not sure. I would
> have expected a has() to take any valid selector...
>
> Here is the html to test with if you wish:
>
> <form method="post"  name="theForm">
>       <div class="domtab3">
>           <ul class="domtabs3">
>               <li><a href="#t1" title="Internal
> Profile"><span>Internal Profile</span></a></li>
>               <li><a href="#t2" title="Private Profile"><span>Private
> Profile</span></a></li>
>               <li><a href="#t3" title="Public Profile"><span>Public
> Profile</span></a></li>
>               <li><a href="#t4" title="Work History"><span>Work
> History</span></a></li>
>           </ul>
>           <INPUT TYPE="hidden" NAME="tabsub" ID="tabsub"
> VALUE="internal">
>           <div class="test">
>               <span><a name="t1" id="t1"></a></span>
>           </div>
>           <div class="test">
>               <span><a name="t2" id="t2"></a></span>
>               <div>
>                   <div>Address</div>
>                   <div><input type="text" name="address1"
> value="address line 1" size="40" ></div>
>               </div>
>               <div>
>                   <div></div>
>                   <div><input type="text" name="address2"
> value="address line 2" size="40" ></div>
>               </div>
>               <div>
>                   <div></div>
>                   <div><input type="text" name="city" value="address
> line 3" size="30" ></div>
>               </div>
>               <div>
>                   <div>Postcode</div>
>                   <div><input type="text" name="postcode"
> value="postcode" size="30" ></div>
>               </div>
>               <div>
>                   <div>Tel*</div>
>                   <div><input type="text" value="" size="30"
> name="tel"></div>
>               </div>
>               <div>
>                   <div>Email*</div>
>                   <div><input type="text"
> value="[email protected]" size="30" name="email"></div>
>               </div>
>               <INPUT TYPE="submit" NAME="submit" VALUE="Save"
> class='submit' onClick="d=document.getElementById
> ('tabsub');d.value='private';return true;">
>           </div>
>           <div class="test">
>               <span><a name="t3" id="t3"></a></span>
>               <div>
>                   <div>Name</div>
>                   <div><input type="text" size="30"
> name="newusername" value="admin"></div>
>               </div>
>               <div>
>                   <div><strong>Birth Date</strong></div>
>                   <div><input name="Birth Date" type="text" size="30"
> value=""></div>
>               </div>
>               <div>
>                   <div><strong>Job Title</strong></div>
>                   <div><input name="Job Title" type="text" size="30"
> value=""></div>
>               </div>
>               <div>
>                   <div><strong>Company</strong></div>
>                   <div><input name="Company" type="text" size="30"
> value=""></div>
>               </div>
>
>               <INPUT TYPE="submit" NAME="submit" VALUE="Save"
> class='submit' onClick="d=document.getElementById
> ('tabsub');d.value='public';">
>           </div>
>           <div class="test">
>               <span><a name="t4" id="t4"></a></span>
>               <a href="/members/admin/index_edit.html?
> add_new_job=1">Add new job...</a><br><br>
>               <INPUT TYPE="submit" NAME="submit" VALUE="Save"
> class='submit' onClick="d=document.getElementById
> ('tabsub');d.value='jobs';;return 1;">
>           </div>
>       </div>
> </form>
>
>
>
>
>
> >


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"tellurium-users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/tellurium-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to