@@ -4837,6 +4837,7 @@ def __process_recorded_actions(self):
4837
4837
ext_actions.append("js_cl")
4838
4838
ext_actions.append("js_ca")
4839
4839
ext_actions.append("js_ty")
4840
+ ext_actions.append("s_val")
4840
4841
ext_actions.append("jq_cl")
4841
4842
ext_actions.append("jq_ca")
4842
4843
ext_actions.append("jq_ty")
@@ -4927,6 +4928,11 @@ def __process_recorded_actions(self):
4927
4928
for n in range(len(srt_actions)):
4928
4929
if srt_actions[n][0] == "ch_cl":
4929
4930
srt_actions[n][0] = "js_cl"
4931
+ for n in range(len(srt_actions)):
4932
+ if srt_actions[n][0] == "s_val":
4933
+ srt_actions[n][0] = "set_v"
4934
+ srt_actions[n][2] = srt_actions[n][1][1]
4935
+ srt_actions[n][1] = srt_actions[n][1][0]
4930
4936
4931
4937
# Generate the script from processed actions
4932
4938
sb_actions = recorder_helper.generate_sbase_code(srt_actions)
@@ -7496,19 +7502,23 @@ def set_value(
7496
7502
css_selector = re.escape(css_selector) # Add "\\" to special chars
7497
7503
css_selector = self.__escape_quotes_if_needed(css_selector)
7498
7504
the_type = None
7505
+ if ":contains\\(" not in css_selector:
7506
+ get_type_script = (
7507
+ """return document.querySelector('%s').getAttribute('type');"""
7508
+ % css_selector
7509
+ )
7510
+ the_type = self.execute_script(get_type_script) # Used later
7499
7511
if self.recorder_mode and self.__current_url_is_recordable():
7500
7512
if self.get_session_storage_item("pause_recorder") == "no":
7501
7513
time_stamp = self.execute_script("return Date.now();")
7502
7514
origin = self.get_origin()
7503
7515
sel_tex = [pre_escape_css_selector, text]
7504
- action = ["js_ty", sel_tex, origin, time_stamp]
7516
+ if the_type == "range" and ":contains\\(" not in css_selector:
7517
+ action = ["s_val", sel_tex, origin, time_stamp]
7518
+ else:
7519
+ action = ["js_ty", sel_tex, origin, time_stamp]
7505
7520
self.__extra_actions.append(action)
7506
7521
if ":contains\\(" not in css_selector:
7507
- get_type_script = (
7508
- """return document.querySelector('%s').getAttribute('type');"""
7509
- % css_selector
7510
- )
7511
- the_type = self.execute_script(get_type_script) # Used later
7512
7522
script = """document.querySelector('%s').value='%s';""" % (
7513
7523
css_selector,
7514
7524
value,
0 commit comments