JS - 输入元素值在检查元素之前为null

时间:2018-03-21 22:38:54

标签: javascript dom

我这里有一个奇怪的案例。

我要做的是使用chrome扩展程序将javascript注入页面。

到目前为止, 想法是javascript查找元素的值,如果匹配“Hobart”它会发出警报。

问题是值返回为null,但是当我检查chrome中的元素时,脚本开始识别元素的值。

但是在页面刷新之后,返回null。

输入字段元素始终在页面上显示“Hobart”。

如果没有检查元素,它就像页面不允许通过javascript读取元素。有什么想法吗?

Screenshot 1

Screenshot 2

Another SS of changing color to red after "enabling" value readout by inspecting.

Javascript和HTML部分页面我试图从中获取价值:

state = document.getElementById("sys_display.incident.assignment_group").value;
if (state=="Hobart") {
document.getElementById("sys_display.incident.assignment_group").style.color="red";
alert("Hobart");

};
<div class="input-group ref-container ">

<input id="sys_display.incident.assignment_group" name="sys_display.incident.assignment_group" aria-labelledby="label.incident.assignment_group" 
type="text" 
autocomplete="off" 
autocorrect="off" 
value="Hobart" 
data-type="ac_reference_input" 
data-completer="AJAXReferenceCompleter" 
data-dependent="null" 
data-ref-qual="true" 
data-ref="incident.assignment_group" 
data-ref-key="null" 
data-ref-dynamic="false" 
data-name="assignment_group" 
data-table="sys_user_group" 
class="form-control element_reference_input  " 
style="; " 
spellcheck="false" 
onfocus="if (!this.ac) addLoadEvent(function() {var e = gel('sys_display.incident.assignment_group'); if (!e.ac) new AJAXReferenceCompleter(gel('sys_display.incident.assignment_group'), 'incident.assignment_group', 'null', 'true'); e.ac.onFocus();})" 
aria-required="true">

</div>

0 个答案:

没有答案