텍스트의 값을 변경하고 싶습니다. 그러나 텍스트는 텍스트 상자의 단락 중간 (4 번째 줄)에 있습니다. 누구든지 텍스트를 식별하는 방법과 텍스트를 변경하는 방법을 안내해 줄 수 있습니까?텍스트 상자의 단락에서 특정 텍스트 값을 재정의하는 방법
참고 :이 경우에는 clear() & sendkeys() 메소드를 사용할 수 없습니다. 왜냐하면 나머지 모든 데이터는 동적으로 변경되기 때문입니다.
텍스트의 값을 변경하고 싶습니다. 그러나 텍스트는 텍스트 상자의 단락 중간 (4 번째 줄)에 있습니다. 누구든지 텍스트를 식별하는 방법과 텍스트를 변경하는 방법을 안내해 줄 수 있습니까?텍스트 상자의 단락에서 특정 텍스트 값을 재정의하는 방법
참고 :이 경우에는 clear() & sendkeys() 메소드를 사용할 수 없습니다. 왜냐하면 나머지 모든 데이터는 동적으로 변경되기 때문입니다.
나는 "텍스트 상자"를 사용하여 input type="text"
을 의미한다고 가정합니다.
input type="text"
요소는 DOM을 형성 받기 : 당신은 할 필요가있다.
.replace()
을 사용하십시오.HTML
<input id="myInput" type="text" value="This is my text" />
JS가
var myInput = document.getElementById("myInput")
var myText = myInput.value.replace("my", "your");
myInput.value = myText;
"이것은 내 텍스트입니다"로 변경됩니다 "이것은 텍스트입니다." 셀레늄과 자바를 사용
, 당신은 이런 식으로 작업을 수행 할 수 있습니다
//load the original text
String originalText = driver.findElement(By.id(inputId)).getAttribute("value");
// replace
String newText = originalText.replace("what_you_want_to_replace", "text_to_replace_with");
//clear field
driver.findElement(By.id(inputId)).clear();
//write your new text
driver.findElement(By.id(inputId)).sendKeys(newText);
당신은 셀레늄에 의해 문자열로 모든 텍스트 영역을 구문 분석 할 수 있습니다. 그 일반 텍스트 영역 후
public string ReplaceRow(string txtArea, int replaceLine, string textToReplace)
{
//Split txtArea into List String
List<string> list = new List<string>(Regex.Split(txtArea, Environment.NewLine));
//Replace specific line with your text
list[replaceLine - 1] = textToReplace;
return String.Join(Environment.NewLine, list);
}
안쪽이 대체 문자열을 보내
그런 다음 새 단락을 얻기 위해이 방법을 사용. 희망이 당신을 위해 작동합니다.
Viet Pham. 귀하의 솔루션은 내 문제에 적합합니다. – Varma