We're updating the issue view to help you get more done. 

Clicking a button while the BocAutoCompleteReferenceValue suggestions are open cancels the button postback in Chrome

Description

Repro 1:

  1. Open ObjectBinding.Web.Test/IndividualControlTest.wxe?UserControl=BocAutoCompleteReferenceValueUserControl.ascx&WxeReturnToSelf=True&TabbedMenuSelection=IndividualControlTests%2cBocAutoCompleteReferenceValue

  2. Enter a valid string into the first AutoComplete

  3. Wait for the popup

  4. Click Save (the postback cancellation overlay is shown for a short time, the SaveButton postback is swallowed)

When clicking a button inside of the UpdatePanel instead (e.g. ReadOnlyPartnerTestSetNullButton), both postbacks are executed as expected, but the double postback cancellation overlay is still shown.

In Chrome, the textbox is focused again after the blur event (see event order below). This causes the CheckFormState to return false (because _submitState.Submitter == body_DataEditControl_PartnerField_TextValue && GetActiveElement() == body_DataEditControl_PartnerField_TextValue) in the DoPostBack call of the button click, which then cancels the postback/does not queue the postback.

Notes:
Executing the above in Chrome fires the following events:

  1. focus (initial click)

  2. blur

  3. focus

  4. [postback]

  5. focus

Executing the above in Firefox fires the following events:

  1. focus (initial click)

  2. blur

  3. [postback]

  4. [postback]

Chrome seems to queue the field.focus(); event of BocAutoCompleteReferenceValue.jquery.js/$.Autocompleter.Selection differently than Firefox. A solution would be to wrap it in a setTimeout of 200ms. A timeout with less than 200ms does not work.

Assignee

Marcel Holle

Reporter

Marcel Holle

Time tracking

0m

Time remaining

3h

Components

Fix versions

Priority

Normal
Configure