blob: dae67e09d33c48240c2e91bc53fc799d3fd6e8ef [file] [log] [blame]
<!-- A page that is used to test that a dynamic form fill feature works properly. -->
<body>
<form name="addr1.1" id="form1" action="https://example.com/" method="post">
Name: <input type="text" name="firstname" id="firstname" autocomplete="given-name"><br>
<input type="text" name="firstname" id="firstname2" autocomplete="given-name" style="display: none"><br>
Address: <input type="text" name="address1" id="address1"><br>
City: <input type="text" name="city" id="city"><br>
<input type="text" name="state_us" id="state_us" style="display: none;" autocomplete="region"><br>
Zip: <input name="zip" id="zip"> <br>
Country: <select name="country" id="country" onchange="CountryChanged()">
<option value="CA">Canada</option>
<option value="US">United States</option>
</select> <br>
Company: <input name="company" id="company"> <br>
Email: <input name="email" id="email"> <br>
Phone: <input name="phone" id="phone"> <br>
<input type="reset" value="Reset">
<input type="submit" value="Submit" id="profile_submit">
</form>
</body>
<script>
var notify_on_address_input_change = false;
var address_input_changed = false;
function CountryChanged() {
// Reset the value of the address field.
var address1 = document.getElementById('address1');
address1.value = '';
address1.onchange = function() {
if (notify_on_address_input_change)
window.domAutomationController.send(address1.value != '');
else
address_input_changed = true;
}
// Change the element that triggered the autofill. Remove it, and make another
// field visible. This is to test if the autofill can handle the case where
// the clicked on element is no longer valid.
var first_name_input = document.getElementById("firstname");
first_name_input.parentNode.removeChild(first_name_input);
var name_later = document.getElementById("firstname2");
name_later.removeAttribute('style');
}
function hasRefilled() {
var address1 = document.getElementById('address1');
if (address1 && address_input_changed) {
window.domAutomationController.send(address1.value != '');
} else {
notify_on_address_input_change = true;
}
}
</script>