0

Webテストを自動化しており、テキスト領域の内容を検証したいと考えています。

ユーザーの視点から実際に何が表示されているかを確認したいと思います。プレースホルダーを使用して配置するか、ユーザー/テストケースで入力するかは関係ありません。html5プレースホルダー属性を使用します。

$("textarea").text()テキストがプレースホルダーを介して入力されている場合、何も表示されません。

試し$("textarea").val()ましたが、を使用した場合と同じ動作が得られます.text()

次のようなロジックを記述できますif ( text is empty ) { look at placeholder }が、テキスト領域に実際に何が表示されているかを判断できないため、それは間違っていると感じます。ロジックを使用する代わりの方法が欲しいのですが。それ以外の場合は、ブラウザーがテストで実装したものと同じロジックを使用していると想定します。

何か案は?

4

2 に答える 2

2

html5プレースホルダーまたはjsプラグインによって追加されたプレースホルダーを意味しますか?

ケース1の場合、これが役立つと思います。

var text = $("textarea").val() || $("textarea").attr('placeholder')

デモ: http: //jsfiddle.net/mJkFc/

于 2013-02-06T10:10:57.217 に答える
0

これを試して:

var t = document.getElementsByTagName('textarea')[0];
var text = t.value || t.getAttribute("placeholder") || "";
于 2013-02-06T10:11:03.300 に答える