0
function displayResult1(szybkosc) {
    var n = value = szybkosc;
    var u = n.split("|")[1]; 
    document.getElementById('result1').innerText = ' '+u;
}

function displayResult2(szybkosc) {
    var n = value = szybkosc;
    var u = n.split("|")[1];
    document.getElementById('result2').innerText = ' '+u;
}

JavaScript コードは機能しますが、結果ごとに新しい関数を実行する必要があります。とにかく速くするためですか?

$i = 1;
while($i < 10){
    $result = "result" . $i;
    $displayResult = "displayResult" . $i;
    echo "user number ".$i."
    <input type='radio' name='szybkosc' onclick='$displayResult(this.value)' value='$sp1[id]|1|$row[id]' />
    <input type='radio' name='szybkosc' onclick='$displayResult(this.value)' value='$sp1[id]|3|$row[id]' />
    <span id='$result'></span></br>
    <input type='radio' name='ss' value='$sp1[id]|1|$row[id]' />
    <input type='radio' name='ss' onclick='$displayResult(this.value)' value='$sp1[id]|1|$row[id]' />";
    $i++;
}
4

2 に答える 2

1
  1. 同じ目的で 2 つの関数を使用するのはなぜですか?
  2. valueここで使用する目的は何var n = value = szybkosc;ですか?
  3. あなたのコードには、一致する中かっこと適切な html タグがありません。

idを 2 番目のパラメーターとして渡すだけです。

function displayResult(szybkosc, id) {
    var n = szybkosc;
    var u = n.split("|")[1];
    document.getElementById(id).innerText = ' ' + u;
}

PHP コードは次のように更新されます。

$i = 1;
while($i < 10){
    $result = "result" . $i;
    $displayResult = "displayResult" . $i;
    echo "user number ".$i."
    <input type='radio' name='szybkosc' onclick='$displayResult(this.value)' value='$sp1[id]|1|$row[id]' />
    <input type='radio' name='szybkosc' onclick='$displayResult(this.value)' value='$sp1[id]|3|$row[id]' />
    <span id='$result'></span></br>
    <input type='radio' name='ss' value='$sp1[id]|1|$row[id]' />
    <input type='radio' name='ss' onclick='$displayResult(this.value, "result' . $i .'")' value='$sp1[id]|1|$row[id]' />";
    $i++;
}
于 2013-09-10T04:56:10.970 に答える
0

PHP ループ内の項目ごとに複数の js 関数を使用する必要はありません。この単一の js 関数を使用して、それに応じてパラメーターを渡すだけです。

function displayResult(szybkosc, id)
   var n=value=szybkosc;
   var u=n.split("|")[1]; 
   document.getElementById('result'+id).innerText = ' '+u;
}

そして、js 関数を呼び出す php ループ コードを変更します。

$i = 1;
    while($i     $result = "result" . $i;
    $displayResult = "displayResult" . $i;
    echo "user number ".$i."
    input type='radio' name='szybkosc' onclick='$displayResult(this.value, '.$i.')' value='$sp1[id]|1|$row[id]' />
    input type='radio' name='szybkosc' onclick='$displayResult(this.value, '.$i.')' value='$sp1[id]|3|$row[id]' />  
   input type='radio' name='ss' value='$sp1[id]|1|$row[id]' />
   input type='radio' name='ss' onclick='$displayResult(this.value, '.$i.')' value='$sp1[id]|1|$row[id]' />";
   $i++;
}

ところで、php の while ループには左中括弧がありません。

于 2013-09-10T04:46:27.600 に答える