Javascript 语义UI弹出窗口-在初始化之前更改HTML

Javascript 语义UI弹出窗口-在初始化之前更改HTML,javascript,popup,semantic-ui,Javascript,Popup,Semantic Ui,我正在使用语义用户界面,有一个弹出窗口,其中有一个输入字段(搜索字段)。弹出窗口是在“on:‘click’”时初始化/打开的,但是我想在用户打开弹出窗口之前用javascript为输入字段设置一个值 试图这样做 document.getElementById("sok_tekst").value = input; 只会导致 未捕获的TypeError:无法将属性“值”设置为null 当我在控制台中查看时,我看到HTML代码包含带有输入字段(id=“sok_tekst”)的弹出窗口,但在初始化之

我正在使用语义用户界面,有一个弹出窗口,其中有一个输入字段(搜索字段)。弹出窗口是在“on:‘click’”时初始化/打开的,但是我想在用户打开弹出窗口之前用javascript为输入字段设置一个值

试图这样做

document.getElementById("sok_tekst").value = input;
只会导致

未捕获的TypeError:无法将属性“值”设置为null

当我在控制台中查看时,我看到HTML代码包含带有输入字段(id=“sok_tekst”)的弹出窗口,但在初始化之前,我似乎无法使用javascript访问它

我觉得我已经尝试了所有的方法,看起来我需要在向输入字段添加值之前打开弹出窗口

这是一个

有没有人在这件事上耍花招

谢谢


出于好奇:我正在使用输入字段作为表/工作计划中的搜索字段。当用户更改周数重新绘制表格时,弹出窗口也会重新绘制。我试图保留搜索值,并将其放回输入字段、新弹出窗口和新表中

为了初始化输入值,您不应该使用
data html=“…”
指定弹出内容,这不会让更改值导致输入尚未创建(这就是为什么您无法将属性“value”设置为null),因此应该从预先存在的html内容中更改它,因此使用
弹出:$(“#YourContentSelector”),
在弹出设置中设置内容,然后您可以使用以下命令更改输入值:
$(“#input_test”).val('test');

HTML:

<!-- Popup Button -->
<i class="search link icon sok"></i>
<!-- Popup Button -->

<!-- Popup Content -->
<div class='ui form popup hidden' id="content"><!-- hidden class added so it won't be shown when it's loaded   -->
    <div class='field'>
        <div class='ui icon input'>
            <input type='text' placeholder='Input' id='input_test'>
            <i class='search icon'></i>
        </div>
    </div>
</div>
<!-- Popup Content -->
这是一张工作票


您好,谢谢您的回答。但这不起作用。当输入字段位于弹出窗口中时,打开弹出窗口时,该字段将显示为空。如果我误解了什么,请您更改演示,使输入字段位于弹出窗口中好吗?谢谢!我用演示编辑了我的原始帖子,试图使用您的解决方案…After重建HTML,正如在这个答案中一样,它是有效的!编写一个单独的弹出窗口而不是使用数据HTML,使弹出代码在初始化之前“可访问”。谢谢!很高兴我能提供帮助:)
$(document).on('click', '.search.sok', function() {
  $('#input_test').val('test');
    $(this)
       .popup({
           popup: $('#content'),
            on:'click'
       })
       .popup('show');

});