[英]Trying to pass in an object as a parameter for an innerHTML function
我正在嘗試使用基於幾個不同對象選擇的信息來填充多個表單元innerHTML。 我目前有多種功能,每種選擇一種:
<input onClick="firstChoice();" type="radio" id="first-choice">
<input onClick="secondChoice();" type="radio" id="second-choice">
<tr>
<td>A</td>
<td id="aCell">xx</td>
</tr>
<tr>
<td>B</td>
<td id="bCell">xx</td>
</tr>
<script>
function Foo(a, b) {
this.a = a;
this.b = b;
}
first = new Foo(42, 8);
second = new Foo(100, 4);
var aCell = document.getElementById("first-choice");
var bCell = document.getElementById("second-choice");
function firstChoice() {
aCell.innerHTML = first.a;
bCell.innerHTML = first.b;
}
function secondChoice() {
aCell.innerHTML = second.a;
bCell.innerHTML = second.b;
}
</script>
目前,這是可行的,但我確定必須有一種使用單個函數並將對象作為參數傳遞的方法,而不是為每個對象都具有一個函數,但是我對javascript非常缺乏經驗,似乎無法在任何地方找到答案,反復試驗花了我幾個小時。 我正在尋找一些可能符合以下條件的東西:
function choice(choicePicked) {
aCell.innerHTML = choicePicked.a;
bCell.innerHTML = choicePicked.b;
}
或者,也許有一種完全不同的方式來完成任務-一切幫助將不勝感激!
您在正確的軌道上:
function choice(choicePicked) {
aCell.innerHTML = choicePicked.a;
bCell.innerHTML = choicePicked.b;
}
您只需要像這樣更改事件處理程序:
<input onClick="choice(first);" type="radio" id="first-choice">
<input onClick="choice(second);" type="radio" id="second-choice">
這樣,您就可以將所需的對象傳遞給choice
函數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.