Javascript 在dojo filteringSelectWidget之前和之后添加span标记

Javascript 在dojo filteringSelectWidget之前和之后添加span标记,javascript,dojo,Javascript,Dojo,我试图在刚才创建的DojoFilteringSelect小部件标记之前和之后插入一个标记。我怎么能在dojo中做到这一点 <html> <head> <script src="http://ajax.googleapis.com/ajax/libs/dojo/1.3/dojo/dojo.xd.js"> </script> <script type="text/javascript"> dojo.r

我试图在刚才创建的DojoFilteringSelect小部件标记之前和之后插入一个标记。我怎么能在dojo中做到这一点

<html>
<head>
    <script src="http://ajax.googleapis.com/ajax/libs/dojo/1.3/dojo/dojo.xd.js">
    </script>
    <script type="text/javascript">
        dojo.require("dijit.form.FilteringSelect");
        var filteringSelect = new dijit.form.FilteringSelect({
            id: "test"
        }, "test");
    </script>
    />
</head>
<body>
    <div aria-expanded="false" widgetid="test" role="combobox" class="dijit dijitReset dijitInlineTable dijitLeft dijitComboBox" id="widget_test" dojoattachevent="onmouseenter:_onMouse,onmouseleave:_onMouse,onmousedown:_onMouse" dojoattachpoint="comboNode" wairole="combobox" tabindex="-1">
        <div style="overflow: hidden;">
            <div role="presentation" class="dijitReset dijitRight dijitButtonNode dijitArrowButton dijitDownArrowButton dijitArrowButtonActive" dojoattachpoint="downArrowNode" wairole="presentation" dojoattachevent="onmousedown:_onArrowMouseDown,onmouseup:_onMouse,onmouseenter:_onMouse,onmouseleave:_onMouse">
                <div class="dijitArrowButtonInner">
                    ?
                </div>
                <div class="dijitArrowButtonChar">
                    ?
                </div>
            </div>
            <div class="dijitReset dijitValidationIcon">
                <br>
            </div>
            <div class="dijitReset dijitValidationIconText">
                ?
            </div>
            <div class="dijitReset dijitInputField">
                <input aria-owns="test_popup" value="United States" aria-required="true" tabindex="0" id="test" aria-invalid="false" aria-autocomplete="list" aria-haspopup="true" role="textbox" autocomplete="off" class="dijitReset" dojoattachevent="onkeypress:_onKeyPress,compositionend" dojoattachpoint="textbox,focusNode" wairole="textbox" waistate="haspopup-true,autocomplete-list" type="text"><input name="" style="display: none;" type="text">
            </div>
        </div>
    </div>
</body>
</html>

require(“dijit.form.FilteringSelect”);
var filteringSelect=new dijit.form.filteringSelect({
id:“测试”
}“测试”);
/>
?
?

?
好吧,如果你真的想在Javascript和HTML之间分割FilteringSelect的定义,我想你可以做一些丑陋的事情,比如:

var targetInput = dojo.byId("test");
var spanWrapper = dojo.create("span");

dojo.place(wrapperSpan, targetInput, "replace");
dojo.place(targetInput, wrapperSpan);

dojo.require("dijit.form.FilteringSelect");

var filteringSelect = new dijit.form.FilteringSelect({
    id: "test"
}, "test");

我对我刚刚发布的内容感到震惊,但现在我想不出其他办法。以前有一个wrap()方法,但显然它已经不存在了。它仍然存在,只是很难找到-但这将把小部件嵌套在一个标记中。对于之前和之后的标记,这不就是对dojo.create()的两个调用吗?