2017-07-31 34 views
0

你好
我想告訴你,我知道有很多解決堆棧溢出問題的例子,但是關於相同的問題。但我的是不同的和複雜的。

我有PHP變量已經逗號等分隔值 「car_ferrari,car_jaguar,car_lamborghini」和我有多個的複選框
enter image description here        名= '車[]'          值= 'car_ferrari'      
enter image description here        名= '車[]'          值= 'car_lamborghini'      
enter image description here        名= '車[]'          值= 'car_hummer'      
enter image description here        名='車[] '          value ='car_jaguar'     
enter image description here        名= '車[]'          值= 'car_aston'      
從字符串中預先檢查PHP的複選框

我要檢查checbox如果這個變量字符串的值相同。
car_ferrari的價值就像複選框,car_jaguar,car_lamborghini應檢查
我有大量的這些類型的變量以及大量的複選框array.I知道我可以使用爆炸,然後in_array(),但將約400個複選框的每個複選框放入條件非常耗時。

如果jquery會幫忙把它整理出來,我會用它,但給我一個合適的答案。詢問我是否需要查詢。
在此先感謝。

+0

您需要拆分的逗號你的字符串然後過來就是和匹配W¯¯迭代ith你的複選框。 – Webbanditten

+0

將字符串傳遞給jQuery,然後使用它遍歷您的值並檢查所需的複選框。 – Tom

+0

請檢查出來的URL [鏈接] http://www.codenomad.biz/ssa-agency/info並點擊**遺傳史** 我對每行每一個變量,我想請選中該複選框誰擁有與該複選框相同的值。 希望你明白我的意思。 – Boyka

回答

2

我創建了一個JSFiddle,演示瞭如何通過逗號分割字符串,然後迭代並選中具有相應值的複選框。

純JS解決方案

var myString = "car_ferrari,car_jaguar,car_lamborghini"; 
 

 
var selectedCarArray = myString.split(","); 
 

 
selectedCarArray.forEach(function(element) { 
 
    document.getElementById('checkbox_' + element).checked = true; 
 
});
<input type="checkbox" name="car[]" value="car_ferrari" id="checkbox_car_ferrari" /> 
 
<input type="checkbox" name="car[]" value="car_lamborghini" id="checkbox_car_lamborghini" /> 
 
<input type="checkbox" name="car[]" value="car_hummer" id="checkbox_car_hummer" /> 
 
<input type="checkbox" name="car[]" value="car_jaguar" id="checkbox_car_jaguar" /> 
 
<input type="checkbox" name="car[]" value="car_aston" id="checkbox_car_aston" />

jQuery的解決方案

var myString = "car_ferrari,car_jaguar,car_lamborghini"; 
 

 
var selectedCarArray = myString.split(","); 
 

 
selectedCarArray.forEach(function(element) { 
 
    $('input[value="' + element + '"]').prop('checked', true); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="checkbox" name="car[]" value="car_ferrari" /> 
 
<input type="checkbox" name="car[]" value="car_lamborghini" /> 
 
<input type="checkbox" name="car[]" value="car_hummer" /> 
 
<input type="checkbox" name="car[]" value="car_jaguar" /> 
 
<input type="checkbox" name="car[]" value="car_aston" />

+0

您是否檢查了我提供給您的Url。 我有大量的PHP變量,如「shoes_adidas,shoes_reebok,shoes_nike」 和我有多個的複選框有 如果我有大量的PHP變量和大集的複選框的。 我不能使用靜態值,如var myString =「car_ferrari,car_jaguar,car_lamborghini」; – Boyka

+0

訪問您的網址時我被重定向。 – Webbanditten

+0

用戶名:[email protected] 通:manpreet @ 123 它僅僅是一個虛擬數據 – Boyka