我有一个带有选择框的窗口,选择了一个特定选项。在具有相同选择框值的弹出窗口中,我希望选择框从父窗口中选择相应的选择框选项。 我通过PHP调用在弹出窗口中生成选择框字段,直接从Mysql表生成。 请解决我的疑问
mystates = [
{
title: ' list',
html:'<table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF"><tr><td><strong>DATA1</strong></td><td>:</td><td id=\'dataid1\'> <select name=\'dataid1\' id=\'dataid1\' class=\'dataid1\'>'+<?php echo json_encode($options)?>+'</select></td></tr></table>',
buttons: { OK: true ,Cancel: -1},
focus: 1,
submit:function(e,v,m,f){
e.preventDefault();
if(v==-1){
$.prompt.close();
return false;
}
else if(v){
dtaafunc(f);
$.prompt.nextState();
return false;
}
}
},
html是
<?php
$result = db_query('SELECT * FROM cart_items' );
foreach($result as $wonresRes){
$options.="<option value='".$wonresRes->ID."'>".$wonresRes->data." </option>";
}
?>
<table class='mtable'>
<tr>
<td>DATA1</td>
<td id='dataid1'>
<select name='dataid1' id='dataid1' class='dataid1'>
<?php echo ($options)?>
</select>
</td>
</tr>
</table>
答案 0 :(得分:1)
首先,没有两个元素具有相同的id。您的父页面和弹出窗口包含一个具有相同id的selectbox。更改其中任何一个。
var selected = $('#select1').val() //Gives u the current option that is being selected(Parent page)
生成弹出窗口后,使用以下内容选择选择框
如果您将弹出式选择框ID重命名为selectbox2
$('#selectbox2').val(selected) //To be added only after the html is generated
案例2(文字说明)
var selectedTxt = $('#field').text();
选择
$("#selectbox2 option[value='"+selectedTxt+"']").attr('selected', 'selected'); //based on value
$("#selectbox2 option:contains(" + selectedTxt + ")").attr('selected', 'selected'); //based on text
这将使弹出选择框被选中。希望有助于交配......:)