2017-01-20 2 views
1

사용하여 C#을 내가 가진 그특정 요소에 대한 클래스를 수정할 수 있습니까?

<div data-cid="view163" class="pull-right"><a class="btn btn-success btn-large disabled" data-action="proceed" href="#"><span class="btn-content">Continue</span></a></div> 

같은 비활성화 버튼을 btn btn-success btn-large 그래서 난 링크를 클릭 할 수있을하는 a 태그 클래스를 변경하는 방법이 있나요?

+0

요소가 있고 클릭 할 수 있으면'disabled' 클래스와 상관없이 요소를 클릭 할 수 있어야합니다. 선택기가 다른 요소를 반환하거나 표시되기 전에 클릭하려고하는 것과 같은 다른 문제가 발생할 수 있습니다. – mrfreester

+0

아니요 비활성화 됨 – Wel

+1

사용 중지 된 경우이 방법으로 페이지를 가로 챌 수있는 유효한 테스트입니까? 또는 아마도 이것은 테스트 목적이 아닙니다. – mrfreester

답변

1

HTML에서 볼 수있는 것부터 버튼이 실제로 비활성화되어 있지는 않지만 단지 클래스의 '비활성화 됨'이 있습니다. 그러나 코드에서 무언가가 키잉되어 있다면 드라이버의 IJavaScriptExecutor 인터페이스를 사용할 수 있습니다. 자바 스크립트를 실행하여 클래스를 제거하십시오.

((IJavaScriptExecutor)driver).Execute("$('a.disabled').removeClass('disabled')"); 

구문은 정확하게 맞지 않을 수 있습니다 그러나 그것은 생각이다 : 당신이 당신의 웹 사이트에서 jQuery를 가지고 셀레늄을 구동하기 위해 C#을 사용하는 경우는 다음과 같이한다. 물론 선택자는 HTML의 나머지 부분에 따라 다를 수 있습니다.

+0

dom을 사용하여 앵커 태그로 이동하고 클래스를 제거해야합니다. 내가 그 방향을 따라 간 이후로 나는 그 일을하는 법을 알지 못한다. – MikeS

+1

'executeScript (문자열 expr)' –

관련 문제