![](/img/trans.png)
[英]Javascript function(params) and function({ params }), one function two call types
[英]Two array types into one function
我有一個表單,您單擊一個按鈕,然后需要更改元素的不透明度並選擇單選或復選框。 我在表單中有一堆,所以在創建這種類型的數組時需要幫助。 一些ID是dp001,dp002…。 dp050,因此在到達dp010時,必須有一個條件在其后附加前綴。 我要更改不透明度的元素集合。 元素的其他集合沒有特定順序,但我想收集它們並進行檢查。 我在某個地方創建了FUBAR :)
小提琴無法正常工作……真的讓我失望了,不知道為什么jsfiddle拒絕為我加載JavaScript。 這是Fiddle小提琴嗎?
在我的Web服務器上,警報可以正常運行,並且不執行我想要的操作。 Javscript在我的服務器上運行檢查出來。
HTML
<div id="dp001">Item #1 <input type="radio" id="abc005"></div>
<div id="dp002">Item #2 <input type="radio" id="abc008"></div>
<div id="dp003">Item #3 <input type="checkbox" id="abc010"></div>
<div id="dp004">Item #4 <input type="checkbox" id="abc020"></div>
<div id="dp005">Item #5</div>
<div id="dp006">Item #6</div>
<div id="dp007">Item #7</div>
<div id="dp008">Item #8</div>
<div id="dp009">Item #9</div>
<div id="dp010">Item #10</div>
<div id="dp011">Item #11</div>
<button type="button" onclick="DoStuff();">Click</button>
JAVASCRIPT
function DoStuff() {
var items = null;
var checkMe = ["abc005" , "abc0008" , "abc010" , "abc020"];
for (i=1 ; i < 12 ; i++) {
if (i < 10) {
items = 'dp00' + i;
} else {
items = 'dp0' + i;
}
}
alert("ding");
document.getElementById("items").style.opacity="0.5";
document.getElementById("checkMe").checked = true;
}
我覺得你需要
function DoStuff() {
var checkMe = ["abc005" , "abc0008" , "abc010" , "abc020"];
for (var i=1; i < 12; i++) {
var items = 'dp0' + (i<10 ? '0' : '') + i;
document.getElementById(items).style.opacity = 0.5;
}
for (var i=0, l=checkMe.length; i<l; ++i)
document.getElementById(checkMe[i]).checked = true;
}
您的代碼有問題:
"items"
是文字字符串,而不是可變items
。 與"checkMe"
相同。 i
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.