如何从指令中设置输入类型文本的值,该指令从数组中获取随机值

时间:2014-03-22 19:24:05

标签: javascript arrays angularjs

我编写了以下函数来设置input type =“text”的值。该值是随机选取的数组元素。

(function func(){
    var qArray = ['This','is','a','test','string','that','has'];
    for(var i =0;i<qArray.length;i++) {
            var que = Math.floor(Math.random() * 7);
            console.log(qArray[que]);
        }
        document.getElementById("q").setAttribute("value", qArray[que]);
        document.getElementById("q").innerHTML = qArray[que];

    })()

http://jsbin.com/daturahu/1/ //工作

现在我的其余代码在AngularJs中,我很难使用angualrjs使用数组元素更新input type =“text”值。我知道我必须创建一个指令并使用它,但我无法让它工作。有人可以看看,请帮忙;

我的jsbin在这里,

http://jsbin.com/xelerusu/1/ //已损坏

2 个答案:

答案 0 :(得分:1)

根据我的理解,您只需将所有功能都放到link的{​​{1}}属性中。

directive

http://jsbin.com/xelerusu/3

答案 1 :(得分:1)

我认为您特别关注value的{​​{1}}属性,如果是这种情况,只需将模板更改为此...

input

并在指令集$ scope.val的link函数中根据需要

template:'<input type="text" id="q" value="{{val}}">'

这里是JSBIN EXAMPLE ...