0

我的网站上有一个联系表格,其文本输入是通过 AS2 创建的。这工作正常,但无论我做什么,我都无法让标签工作(甚至没有任何效果)。我有一个菜单,有时显示在顶部,有时显示在左侧,有时显示在底部。如果它在顶部或底部,则表单选项卡可以正常工作,但是如果它在侧面,那么当我从contact_namefield 选项卡时,它会转到第8 个菜单选项,然后是第9 个菜单选项,然后是contact_emailfield,然后是contact_messagefield。类似地,如果我从菜单顶部按选项卡,它会依次下降到菜单选项 7,然后是 contact_namefield,然后是菜单选项 8,然后是菜单选项 9,然后是 contact_emailfield,然后是 contact_messagefield。我一生都无法弄清楚如何改变这一点,我宁愿避免为页面上的每个其他元素设置 tabenabled=false (因为我仍然希望这些元素被标记),但无论哪种方式,我都不认为这会解决它,因为我指定的 tabindexes 似乎是完全没有影响,无论我输入什么值(即使我颠倒它们),标签顺序总是完全相同的。我正在使用以下代码,如果有人能指出我做错了什么,我将不胜感激,因为我一生都无法弄清楚!

var currfont=_root.textfont;
var inputcol = "0x" + _root.textcolour;
var my_fmt:TextFormat = new TextFormat();
my_fmt.bold = false;
my_fmt.font = "Arial";
my_fmt.color = inputcol;

createTextField("contact_namefield", getNextHighestDepth(),112.6, 29, 174, 20);
contact_namefield.wordWrap = true;
contact_namefield.multiline = false;
contact_namefield.border = true;
contact_namefield.borderColor = inputcol;
contact_namefield.type = "input";
contact_namefield.setNewTextFormat(my_fmt);
contact_namefield.text = "";
contact_namefield.tabEnabled=true;
contact_namefield.tabindex = 0;

createTextField("contact_emailfield", getNextHighestDepth(),112.6, 74, 174, 20);
contact_emailfield.wordWrap = true;
contact_emailfield.multiline = false;
contact_emailfield.border = true;
contact_emailfield.borderColor = inputcol;
contact_emailfield.type = "input";
contact_emailfield.setNewTextFormat(my_fmt);
contact_emailfield.text = "";
contact_emailfield.tabEnabled=true;
contact_emailfield.tabindex = 1;

createTextField("contact_messagefield", getNextHighestDepth(),112.6, 120.3, 174, 125.6);
contact_messagefield.wordWrap = true;
contact_messagefield.multiline = false;
contact_messagefield.border = true;
contact_messagefield.borderColor = inputcol;
contact_messagefield.type = "input";
contact_messagefield.setNewTextFormat(my_fmt);
contact_messagefield.text = "";
contact_messagefield.tabEnabled=true;
contact_messagefield.tabindex = 2;

非常感谢大家的帮助,

戴夫

4

2 回答 2

3

我发现这个线程正在搜索我的 tabIndex 不起作用的原因,这可能无法解决您的问题,但来自 adobe 网站:“tabIndex 属性必须是正整数”。您的第一个索引为 0,这是非负数,但不是正数。尝试从 1 开始。

于 2011-07-01T15:49:40.380 回答
1

它是 {tabIndex} 而不是 {tabindex}

var currfont=_root.textfont;
var inputcol = "0x" + _root.textcolour;
var my_fmt:TextFormat = new TextFormat();
my_fmt.bold = false;
my_fmt.font = "Arial";
my_fmt.color = inputcol;
myTxt=["contact_namefield", "contact_emailfield", "contact_messagefield"];
createTextField(myTxt[0], getNextHighestDepth(),112.6, 29, 174, 20);
createTextField(myTxt[1], getNextHighestDepth(),112.6, 74, 174, 20);
createTextField(myTxt[2], getNextHighestDepth(),112.6, 120.3, 174, 125.6);

for (var x=0; x< myTxt.length; x++) {
    eval(myTxt[x]).wordWrap = true;
    eval(myTxt[x]).multiline = false;
    eval(myTxt[x]).border = true;
    eval(myTxt[x]).borderColor = inputcol;
    eval(myTxt[x]).type = "input";
    eval(myTxt[x]).setNewTextFormat(my_fmt);
    eval(myTxt[x]).text = "";
    eval(myTxt[x]).tabEnabled=true;
    eval(myTxt[x]).tabIndex = x;//or (x+1);
}
于 2015-12-06T19:56:11.243 回答