首页 > 解决方案 > 我可以将 js 数组传递到输入字段吗

问题描述

我正在尝试将数组传递给聊天中的输入字段。通过的数组是在满足一定条件之后。例如,在下面的这段代码中,数组来自另一个 div 元素的循环。因此,当用户选择一个选项时,根据选择,数组作为答案传递。这是我下面的代码;

<select name="result" id="result" dataquestion="Click on the button below to know your answer.">
    <option value="my result">Yes</option>
    <option value="no result">No</option>
</select>
<div data-fork="result">
    <div data-case="my result" id="responses">
        <input type="text" data-answer="[]">
    </div>
    <div data-case="no result" id="response">
        <input name="thought" data-answer="[]">
    </div>
</div>
<div id="target">i love a cat</div>
<script type="text/javascript">
var array1 = []
    //var array1 = ["i love a cat"]
    $("#target").each(function() {
      array1.push($(this).html());
    });
    var array2 = ["bat", "cat", "dog"];

    function getMatch(a, b) {
        var matches = [];
        var response = "You got it right"
        for ( var i = 0; i < a.length; i++ ) {
            for ( var e = 0; e < b.length; e++ ) {
                //if ( a[i] === b[e] ) matches.push( a[i] );
                if ( a[i] === b[e] ) matches.push(response);
            }
        }
        return Array.from(new Set(matches));
    }   


    document.getElementById("target").innerHTML = getMatch(array1, array2);
</script>

所以在这个 js 片段中,它没有将值传递给 id=#target,而是转到 'data-answer="[]"'。有没有办法做到这一点?亲切的问候

标签: javascriptarraysselect

解决方案


推荐阅读