亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

通過javascript選中填充下拉值選擇的復選框

通過javascript選中填充下拉值選擇的復選框

PHP
UYOU 2021-07-12 16:53:25
我在 6 個場景中得到了我想要做的 6 個復選框:    <tr style="height: 21px;"><td style="width: 25%; height: 21px;">COB</td><td style="width: 25%; height: 21px;"><input name="COB" type="checkbox" id="COB" value="1" <?php if($_GET['COB'] == '1'){  echo 'checked="checked"';}?>/>           </td><td style="width: 25%; height: 21px;">SMT</td><td style="width: 25%; height: 21px;">  <input name="SMT" id="SMT" type="checkbox" value="1" <?php if($_GET['SMT'] == '1'){  echo 'checked="checked"';}?>/> </td></tr><tr style="height: 21px;"><td style="width: 25%; height: 21px;"></td><td style="width: 25%; height: 21px;"></td><td style="width: 25%; height: 21px;">BGA</td><td style="width: 25%; height: 21px;">  <input name="BGA" id="BGA" type="checkbox" value="1" <?php if($_GET['BGA'] == '1'){  echo 'checked="checked"';}?>/> </td></tr><tr style="height: 21px;"><td style="width: 25%; height: 21px;"></td><td style="width: 25%; height: 21px;"></td><td style="width: 25%; height: 21px;">  TSOP Typ 1 </td><td style="width: 25%; height: 21px;"><input name="TSOP" id="TSOP" type="checkbox" value="1"<?php if($_GET['TSOP'] == '1'){  echo 'checked="checked"';}?> /></td></tr><tr style="height: 21px;"><td style="width: 25%; height: 21px;"></td><td style="width: 25%; height: 21px;"></td><td style="width: 25%; height: 21px;"> TSOP Typ 2</td><td style="width: 25%; height: 21px;"><input name="TSOP2" id="TSOP2" type="checkbox" value="2"<?php if($_GET['TSOP'] == '2'){  echo 'checked="checked"';}?> />   </td></tr><tr style="height: 21px;"><td style="width: 25%; height: 21px;"></td><td style="width: 25%; height: 21px;"></td><td style="width: 25%; height: 21px;"> LGA</td><td style="width: 25%; height: 21px;"><input name="LGA" id="LGA" type="checkbox" value="1"<?php if($_GET['LGA'] == '1'){  echo 'checked="checked"';}?> />    </td></tr>
查看完整描述

3 回答

?
忽然笑

TA貢獻1806條經驗 獲得超5個贊

我注意到在最后 3 個復選框中,值和 php 代碼之間沒有空格。

這:

<td style="width: 25%; height: 21px;"><input name="TSOP2" id="TSOP2" type="checkbox" value="2"<?php if($_GET['TSOP'] == '2'){  echo 'checked="checked"';}?> />   </td>

php執行后可以去這個:

<td style="width: 25%; height: 21px;"><input name="TSOP2" id="TSOP2" type="checkbox" value="2"checked="checked" />   </td>

應該是這樣的:

td style="width: 25%; height: 21px;"><input name="TSOP2" id="TSOP2" type="checkbox" value="2" checked="checked" />   </td>



查看完整回答
反對 回復 2021-07-16
?
ibeautiful

TA貢獻1993條經驗 獲得超6個贊

根據DOM 標準,elemnet ID 在整個文檔中應該是唯一的。在您的代碼中,兩個input具有相同的 id TSOP。


我已經為您創建了 codepen示例以顯示 JAVASCRIPT 部分正在工作,您的 PHP 代碼可能存在一些問題。


function FlashFunction() {


  var index = document.getElementById("FlashID").selectedIndex;



  var SMT = document

    .getElementById("FlashID")

    .options[index].getAttribute("data-SMT");


  var BGA = document

    .getElementById("FlashID")

    .options[index].getAttribute("data-BGA");

  var TSOP = document

    .getElementById("FlashID")

    .options[index].getAttribute("data-TSOP");



  var LGA = document

    .getElementById("FlashID")

    .options[index].getAttribute("data-LGA");



  document.getElementsByName("COB")[0].value = COB;

  document.getElementsByName("SMT")[0].value = SMT;

  document.getElementsByName("BGA")[0].value = BGA;

  document.getElementsByName("TSOP")[0].value = TSOP;

  document.getElementsByName("TSOP2")[0].value = TSOP;

  document.getElementsByName("LGA")[0].value = LGA;

  

  if (TSOP == 1) {

    document.getElementsByName("TSOP")[0].checked = true;

  }

}

<select id="FlashID" name="FlashID" onchange="FlashFunction()">

  <option data-SMT="1" value="volvo">102292</option>

  <option data-SMT="1" value="saab">102293</option>

  <option data-SMT="1" data-TSOP="1" value="mercedes">102412</option>

</select>

<table>

  <tr style="height: 21px;">

    <td style="width: 25%; height: 21px;">COB</td>

    <td style="width: 25%; height: 21px;"><input name="COB" type="checkbox" id="COB" value="1" /> </td>

    <td style="width: 25%; height: 21px;">SMT</td>

    <td style="width: 25%; height: 21px;"> <input name="SMT" id="SMT" type="checkbox" value="1" </td>

  </tr>

  <tr style="height: 21px;">

    <td style="width: 25%; height: 21px;"></td>

    <td style="width: 25%; height: 21px;"></td>

    <td style="width: 25%; height: 21px;">BGA</td>

    <td style="width: 25%; height: 21px;"> <input name="BGA" id="BGA" type="checkbox" value="1" </td>

  </tr>

  <tr style="height: 21px;">

    <td style="width: 25%; height: 21px;"></td>

    <td style="width: 25%; height: 21px;"></td>

    <td style="width: 25%; height: 21px;"> TSOP Typ 1 </td>

    <td style="width: 25%; height: 21px;"><input name="TSOP" id="TSOP" type="checkbox" value="1" </td>

  </tr>

  <tr style="height: 21px;">

    <td style="width: 25%; height: 21px;"></td>

    <td style="width: 25%; height: 21px;"></td>

    <td style="width: 25%; height: 21px;"> TSOP Typ 2</td>

    <td style="width: 25%; height: 21px;"><input name="TSOP2" id="TSOP2" type="checkbox" value="2" </td>


  </tr>

  <tr style="height: 21px;">

    <td style="width: 25%; height: 21px;"></td>

    <td style="width: 25%; height: 21px;"></td>

    <td style="width: 25%; height: 21px;"> LGA</td>

    <td style="width: 25%; height: 21px;">

      <input name="LGA" id="LGA" type="checkbox" value="1" </td>

  </tr>

</table>


查看完整回答
反對 回復 2021-07-16
?
搖曳的薔薇

TA貢獻1793條經驗 獲得超6個贊

你不檢查這樣的復選框


document.getElementsByName("COB")[0].value = COB;

document.getElementsByName("SMT")[0].value = SMT;

document.getElementsByName("BGA")[0].value = BGA;

document.getElementsByName("TSOP")[0].value = TSOP;

document.getElementsByName("TSOP2")[0].value = TSOP;

document.getElementsByName("LGA")[0].value = LGA;

正確的方法是這樣的:


document.getElementById("ItemId").checked = true; 

// because there is one <input ...> i use getEmelentById instead of getElementsById 

在您的程序中,我認為這是您需要使用的正確 javascript 是:


<script>

function FlashFunction(){

var index = document.getElementById("FlashID").selectedIndex;

var COB = document.getElementById("FlashID").options[index].getAttribute("data-COB");

var SMT = document.getElementById("FlashID").options[index].getAttribute("data-SMT");

var BGA = document.getElementById("FlashID").options[index].getAttribute("data-BGA");

var TSOP = document.getElementById("FlashID").options[index].getAttribute("data-TSOP");

var LGA = document.getElementById("FlashID").options[index].getAttribute("data-LGA");

if (COB == 1 ) {

    document.getElementById("COB").checked= true;

} else {

    document.getElementById("COB").checked= false;

}

if (SMT == 1 ) {

    document.getElementById("SMT").checked= true;

} else {

    document.getElementById("SMT").checked= false;

}

if (BGA == 1 ) {

    document.getElementById("BGA").checked= true;

} else {

    document.getElementById("BGA").checked= false;

}

if (TSOP == 1 ) {

    document.getElementById("TSOP").checked= true;

} else {

    document.getElementById("TSOP").checked= false;

}

if (TSOP == 2 ) {

    document.getElementById("TSOP2").checked= true;

} else {

    document.getElementById("TSOP2").checked= false;

}

if (LGA == 1 ) {

    document.getElementById("LGA").checked= true;

} else {

    document.getElementById("LGA").checked= false;

}


}

</script>


查看完整回答
反對 回復 2021-07-16
  • 3 回答
  • 0 關注
  • 235 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號