我正在为我的应用程序编写FuncUnit。我在谷歌浏览器中浏览该应用程序。我有一个最初隐藏的文本框。我需要让它可见,然后清除该文本框中已存在的文本。我有以下代码使框可见但无法清除其中的文本。
S('#search').visible().clearText();
有人能说出这里有什么问题吗?
答案 0 :(得分:0)
尝试通过键入 - Ctrl + A和删除来清除文本框。
var input = S('input.my-input');
input.type('[ctrl]a[ctrl-up][delete]', function() {
// Continue in test case after the text has been removed
});
答案 1 :(得分:0)
您的陈述不准确。 visible()
不会让事情变得明显。它是一个等待函数,在继续执行下一个操作之前等待源元素变为可见。
koalix的关键序列有效。使用type()命令,您可能需要先在文本输入中单击,然后再将其清除。
尝试:
S('#search').visible().click().type('[ctrl]a[ctrl-up][delete]');
答案 2 :(得分:0)
您也可以尝试空引号<" ">
var input = S('input.my-input');
input.type('', function() {
// remove existing text
});
答案 3 :(得分:-1)
我不知道你是否还在等待答案。
我认为你没有以正确的方式使用visible()
。
在FuncUnit中(参见文档here),您可以区分“操作”和“等待”。 visible()
是一个等待,应该用来等待元素变得可见,如下所示:
S('#el').visible( function() {
// do something when element with id="el" becomes visible
});