我使用了3个功能。 getvalyear()和getvaltrimester()用于获取所选下拉列表的值。 getVal()从单击的按钮获取id作为参数。
function getvalyear(ctrl1){
var sel = ctrl1.selectedIndex;
var selVal1 = ctrl1.options[sel].value;
}
function getvaltrimester(ctrl2){
var sel = ctrl2.selectedIndex;
var selVal2 = ctrl2.options[sel].value;
}
function getVal(clicked_id)
{
}
getvalyear()和getvaltrimester()函数从select菜单调用
Select Year:
<select name="year" id="year" style="width: 200px" onchange="getvalyear(this)">
<option value="2014">2014</option>
<option value="2015">2015</option>
<option value="2016">2016</option>
<option value="2017">2017</option>
<option value="2018">2018</option>
</select>
Select Trimester:
<select name="trimester" id="trimester" style="width: 200px" onchange="getvaltrimester(this)">
<option value="1st">1st</option>
<option value="2nd">2nd</option>
<option value="3rd">3rd</option>
</select>
getVal()函数在按钮单击时调用
<?php
require('connect.php');
$sql = "SELECT ictv_id,ictv_name, lb_name FROM ictv_details where region_id='1' and lb_type='DDC' ";
$result = mysql_query($sql)or die(mysql_error());
echo "<div style='text-align: left'>";
echo "<table>";
echo "<tr><th>Name</th><th>Local Body</th><th>Absenteeism</th>
<th>Creativity</th><th>Problem Solving</th><th>Submit</th></tr>";
while($row = mysql_fetch_array($result)){
$ict_id= $row['ictv_id'];
$name= $row['ictv_name'];
$lb= $row['lb_name'];
echo "<tr><form name=\"form$ict_id\" id=\"form$ict_id\"><td>".$name."</td><td>".$lb."</td>
<td>
<select name=\"absent$ict_id\" id=\"absent$ict_id\" style=\"width: 200px\">
<option value></option>
<option value=\"1\">1</option>
<option value=\"2\">2</option>
<option value=\"3\">3</option>
<option value=\"4\">4</option>
<option value=\"5\">5</option>
</select>
</td>
<td>
<select name=\"creative$ict_id\" id=\"creative$ict_id\" style=\"width: 200px\">
<option value></option>
<option value=\"1\">1</option>
<option value=\"2\">2</option>
<option value=\"3\">3</option>
<option value=\"4\">4</option>
<option value=\"5\">5</option>
</select>
</td>
<td>
<select name=\"problem$ict_id\" id=\"problem$ict_id\" style=\"width: 200px\">
<option value></option>
<option value=\"1\">1</option>
<option value=\"2\">2</option>
<option value=\"3\">3</option>
<option value=\"4\">4</option>
<option value=\"5\">5</option>
</select>
</td>
<td>
<input type=\"button\" name=\"submit$ict_id\" id=\"submit$ict_id\" value=\"Submit\" class=\"btn btn-primary \" onclick=\"getVal(this.id)\">
</td>
</form>
</tr>";
}
echo "</table><br /><br /></div>";
// mysql_close();
?>
我的查询是如何在不传递参数的情况下在getVal函数中使用selVal1和selval2的值。
答案 0 :(得分:4)
var selVal1 = "";
var selVal2 = "";
function getvalyear(ctrl1){
var sel = ctrl1.selectedIndex;
selVal1 = ctrl1.options[sel].value;
}
function getvaltrimester(ctrl2){
var sel = ctrl2.selectedIndex;
selVal2 = ctrl2.options[sel].value;
}
function getVal(clicked_id)
{
alert(selVal1 );
alert(selVal2 );
}
答案 1 :(得分:1)
您需要将这些变量添加到高级范围。您可以将这些变量作为全局变量(我不建议这样做),或者您可以将代码包装在自执行函数中,这是一种更好的做法。
看看:
(function(){
var selVal1 = '',
selVal2 = '';
function getvalyear(ctrl1){
var sel = ctrl1.selectedIndex;
selVal1 = ctrl1.options[sel].value;
}
function getvaltrimester(ctrl2){
var sel = ctrl2.selectedIndex;
selVal2 = ctrl2.options[sel].value;
}
function getVal(){
console.log(selVal1);
console.log(selVal2);
}
})();
以下是代码更新的codepen。 (使用jQuery附加事件)
答案 2 :(得分:1)
您的getvalyear()
和getvaltrimester()
都执行相同的功能,因此它可以只是一个功能。
var selected_array = [];//array variable
function getvalyear(ctrl){
var sel = ctrl.selectedIndex;
selected_array.push(ctrl.options[sel].value);
}
function getval(clicked_id)
{
for(var i=0; i<selected_array.length; i++) {
alert(selected_array[i]);
}
}
希望您满足自己的需求。这里 Working FIDDLE
选中此选项: