0

我在谷歌网站上工作

HTML

Customer:<a id="element1" onClick="javascript:changeText(1)">Yes</a>
Support:<a id="element2" onClick="javascript:changeText(2)">Yes</a>
EDC:<a id="element3" onClick="javascript:changeText(3)">Yes</a>
Ex 1:<a id="element4" onClick="javascript:changeText(4)">Yes</a>
Ex 2:<a id="element5" onClick="javascript:changeText(5)">Yes</a>
Ex 3:<a id="element6" onClick="javascript:changeText(6)">No</a>
Ex 4:<a id="element7" onClick="javascript:changeText(7)">No</a>

Javascript

function changeText(idElement) {
var element = document.getElementById('element' + idElement);
if (idElement === 1 || idElement === 2 || idElement === 3
   || idElement === 4 || idElement === 5 || idElement === 6
   || idElement === 7) {
    if (element.innerHTML === 'Yes') element.innerHTML = 'No';
    else {
        element.innerHTML = 'Yes';
    }
}

}

上面的部分工作正常......但我需要刷新以更新我已链接到 Yes, No,一旦刷新所有 Yes No 将根据 HTML 恢复的图表。

我搜索(甚至尝试)使用

var inner = document.getelementid("element7").innerhtml

但是如何使它工作。基本上我还需要捕获刷新后网站上可用的值。

4

1 回答 1

1

这只是一个建议。当然,您需要根据自己的需要制定解决方案。

基本上,您有一个保存默认值的变量,并且在以某种方式发布时,您既可以看到选择的内容,也可以将选项恢复到原始状态。

更新

HTML

Customer:<a id="element1" onClick="javascript:changeText(1)">Yes</a>
Support:<a id="element2" onClick="javascript:changeText(2)">Yes</a>
EDC:<a id="element3" onClick="javascript:changeText(3)">Yes</a>
Ex 1:<a id="element4" onClick="javascript:changeText(4)">Yes</a>
Ex 2:<a id="element5" onClick="javascript:changeText(5)">Yes</a>
Ex 3:<a id="element6" onClick="javascript:changeText(6)">No</a>
Ex 4:<a id="element7" onClick="javascript:changeText(7)">No</a>
<br />
Criteria applied: <input type="text" id="criteria" name="criteria" />
<br />
<button onclick="selection()">Selection</button>&nbsp;&nbsp;&nbsp;
<button onclick="refresh()">Refresh</button>

JS

var yesNoDefaults = ['Yes', 'Yes', 'Yes', 'Yes', 'Yes', 'No', 'No'];

function changeText(idElement) {
    var element = document.getElementById('element' + idElement);
    element.innerHTML = (element.innerHTML === 'Yes' ? 'No' : 'Yes');
}

function refresh() {
    for (var i = 1; i <= 7; i++)
        document.getElementById('element' + i).innerHTML = yesNoDefaults[i - 1];
}

function selection() {
    var selection = '';

    for (var i = 1; i <= 7; i++)     
        selection += document.getElementById('element' + i).innerHTML + ',';

    selection.substring(0, selection.length - 1);

    document.getElementById('criteria').value = selection;

    refresh();
}

检查示例:http: //jsfiddle.net/UfVAH/369/

于 2013-08-13T12:58:46.213 回答