Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将项目添加到<;选择>;在IE5中_Javascript_Html - Fatal编程技术网

Javascript 将项目添加到<;选择>;在IE5中

Javascript 将项目添加到<;选择>;在IE5中,javascript,html,Javascript,Html,我只想回答第一个问题。。。你为什么要问IE5,因为它在我使用的Windows CE设备上,所以我只能使用IE5。我制作的应用程序使用了一个包含几个元素的网页 我有两个文本字段和一个列表或 我想将一个文本框的值转移到列表中。我已经让它在IE 10和Chrome中工作,但当我在设备上测试网页时,它没有将textfield 2的值发送到列表中。有人能帮我解决这个问题吗 这是我的html代码: <tr> <td>Locatie:</

我只想回答第一个问题。。。你为什么要问IE5,因为它在我使用的Windows CE设备上,所以我只能使用IE5。我制作的应用程序使用了一个包含几个元素的网页

我有两个文本字段和一个列表或
我想将一个文本框的值转移到列表中。我已经让它在IE 10和Chrome中工作,但当我在设备上测试网页时,它没有将textfield 2的值发送到列表中。有人能帮我解决这个问题吗

这是我的html代码:

 <tr>
                    <td>Locatie:</td>
                    <td><input type="text" id="one" onkeyup="CheckOne()" name="locatie" value="{locatie}" /></td>
                </tr>
                <tr>
                    <td>Bonregel:</td>
                    <td><input type="text" name="bonregel" id="two" onkeyup="CheckTwo(event)" /></td>
                </tr>
                <tr>
                    <td>Bonlijst:</td>
                    <td><select id="selectbox" multiple></select></td>
                </tr>
                <tr>
                    <td></td>
                    <td><input type="submit" value="Verzenden" id="sub" onclick="CheckContent()" /></td>
                </tr>
                <tr>
                    <td></td>
                    <td><input type="button" value="Velden Legen" id="reset" onclick="ClearFields()" /></td>
                </tr>
编辑

我发现按钮之所以优先是因为某种原因。我一按回车键按钮就提交。但当我在第二个文本字段中按enter键时,它会将数据发送到列表中。是否有解决方案使按钮不具有优先权

以下是我的全部代码:

在IE5上,您可能需要使用
选项
构造函数,而不是
createElement

function AddToList(field) {
    // Create an Option Object
    var val = document.getElementById("two").value;
    var opt = new Option(val, val);
    document.getElementById("selectbox").options.add(opt);
}
它也适用于现代浏览器

我认为您正在使用的
add
,是将选项添加到列表中最兼容的方式,但如果不是这样,您可能需要通过分配来添加选项:

var options = document.getElementById("selectbox").options;
options[options.length] = opt;

…但是,我认为
add
在90年代得到了更好的支持。

以下是我的示例代码:

<form name=vv>
<select name="qq"></select>
<input type=button value="Go" onclick="add()">
</form>

function add() 
{
 var qq = document.vv.qq;
 var option = new Option("text", "0");
 qq.options[qq.options.length] = option;
}

函数add()
{
var qq=document.vv.qq;
var期权=新期权(“文本”,“0”);
qq.options[qq.options.length]=选项;
}

好吧,我总是觉得回答自己的问题有点奇怪,但我找到了解决问题的方法,我想与帮助我的人分享

我发现在IE5中,
在使用javascript添加项目时并不好用。这就是我使用
存储所有数据的原因。我已将
设置为
只读
字段

这是我用来使其工作的Javascript,使用make it work,我的意思是将textbox 2的值添加到textarea中

function AddToList() {
                // Create an Option Object
                var box = document.getElementById("bonregels");
                var val = document.getElementById("two").value.toString();
                if (box.value != "")
                    box.value += "\n";
                box.value = box.value + val;                    
            }

谢谢所有帮助我的人,你把我推向了正确的方向

可能值得检查:我认为IE5默认禁用了JavaScript。@Mave感谢您指出这一点,我已经检查了JavaScript是否被禁用,但没有。javascript在我的设备上是启用的,它是
document.getElementById(“selectbox”).add(opt)
?MDN声明添加在上,而不是
htmloptionscolection
我已在ENTER键上触发事件,但当我按ENTER键时,该按钮优先并提交项目。但有趣的是,你看到的领域并不是一个事件。你知道一种方法使按钮不起作用吗priority@CKY:不要使按钮成为
type=“submitt”
,使用
type=“button”
。当您准备提交表单时,在表单元素上调用
submit()
。感谢您指出,我发现事件触发得非常快,所以IE5 kant会跟上它。那么,有没有办法推迟这一进程event@CKY:你说的“真快”是什么意思?哪个项目?是的,有很多方法可以延迟对事件的响应,但我看不出你需要在这里响应的任何原因。这怎么可能起作用,我不完全理解。你从哪里得到文本,document.vv.qq是什么意思?vv是表单名(即表单标签中的name=“vv”)qq是旧IE中的字段名(即选择标签中的name=“qq”),它不太支持DOM,所以你的代码不起作用。但是我的代码比你想象的要复杂得多。如果我诚实的话,我会做一把小提琴并把它放在问题中,这对我没有什么帮助。在我的情况下,我使用的是一个文本框,当我按某个特定的键时,应该添加这个项目。这不是粗鲁的行为,我真的很感谢你的帮助,但是小提琴根本不起作用
function AddToList() {
                // Create an Option Object
                var box = document.getElementById("bonregels");
                var val = document.getElementById("two").value.toString();
                if (box.value != "")
                    box.value += "\n";
                box.value = box.value + val;                    
            }