Javascript Symfony 1.4:如何使用AJAX';s在选择依赖项中的函数?
在我的数据库中,我有两个相关字段。第二个字段取决于第一个字段中选择的值。这些关系是: 我以表“conflictos_1”的形式使用的函数是:Javascript Symfony 1.4:如何使用AJAX';s在选择依赖项中的函数?,javascript,php,jquery,ajax,symfony-1.4,Javascript,Php,Jquery,Ajax,Symfony 1.4,在我的数据库中,我有两个相关字段。第二个字段取决于第一个字段中选择的值。这些关系是: 我以表“conflictos_1”的形式使用的函数是: 我的问题是:当我编辑一条现有记录时,我应该在AJAX的函数中做什么更改,以便在第二个字段中显示“selected”值?可能会使用类似于: $("option[value='37']").attr('selected', 'selected'); 你有一个类似的问题:这里是我遇到的解决方案:我将问题一分为二 案例1:新记录 我使用的JQuery函数与问题
我的问题是:当我编辑一条现有记录时,我应该在AJAX的函数中做什么更改,以便在第二个字段中显示“selected”值?可能会使用类似于:
$("option[value='37']").attr('selected', 'selected');
你有一个类似的问题:这里是我遇到的解决方案:我将问题一分为二 案例1:新记录 我使用的JQuery函数与问题中所示的相同。具有相关功能,如上所示。这个案子不是我的问题 案例2:编辑现有记录(这是我的问题) 我在小部件中为
'id\u subsector\u actividad'
添加了与函数公共函数subsector()
关联的属性'table\u method'=>'subsector'
(请参见下面的代码)
在conflictos1的partial _form.php中,我为字段id_subsector\u actividad
编写了以下代码:
<?php if (!$form->getObject()->isNew()): ?>
<?php echo $form['id_subsector_actividad'] ?>
<?php endif; ?>
<?php if ($form->getObject()->isNew()): ?>
<select name="conflictos1[id_subsector_actividad]" id="conflictos1_id_subsector_actividad">
<option value="" selected="selected">Seleccione sub-sector</option>
<?php endif; ?>
我在subsector actividadta8table.class.php中创建的以下函数中使用$elsector
public function Subsector()
{
global $elsector;
if (!is_null($elsector)){
$id_sub=$elsector;
$query= Doctrine_Query::create()
->select('a.id')
->from('SubsectorActividadTa8 a')
->innerJoin('a.Conflictos1 c')
->where('a.id_sector = ?', $id_sub);
return $query->execute();
}
}
因此,Symfony显示在表单上,即名为IdSubsectorActividad的字段的值,以前未显示
换句话说,现在当我编辑表conflictos1
中的记录时,名为IdSubsectorActividad的字段显示正确的值,而在此之前,表单不显示任何值
现在一切都好了 您需要显示服务器端代码您的服务器返回的数据似乎不包含任何选定项。@Matanya我使用此函数筛选记录(我使用Symfony 1.4和条令):public function executeSubsector(){$id\u sub=$\u POST['id\u sub'];$this->subsec=doctor\u Core::getTable('subsector actividadta8')->createQuery('a')->where('a.id_sector=?',$id_sub)->execute();}
您的ansewr不起作用,因为第二个选择是由AJAX函数创建的。在我的表单中,我只有这一行:Seleccione sub sector
public function executeSubsector()
{ $id_sub = $_POST['id_sub'];
$this->subsec= Doctrine_Core::getTable('SubsectorActividadTa8') ->createQuery('a')
->where('a.id_sector = ?', $id_sub)
->execute();
}
$("option[value='37']").attr('selected', 'selected');
<?php if (!$form->getObject()->isNew()): ?>
<?php echo $form['id_subsector_actividad'] ?>
<?php endif; ?>
<?php if ($form->getObject()->isNew()): ?>
<select name="conflictos1[id_subsector_actividad]" id="conflictos1_id_subsector_actividad">
<option value="" selected="selected">Seleccione sub-sector</option>
<?php endif; ?>
public function executeEdit(sfWebRequest $request)
{
global $elsector;
$this->forward404Unless($conflictos1 = Doctrine_Core::getTable('Conflictos1')->find(array($request->getParameter('id'))), sprintf('Object conflictos1 does not exist (%s).', $request->getParameter('id')));
$elsector= $conflictos1->getIdSectorActividad();
$this->form = new Conflictos1Form($conflictos1);
}
public function Subsector()
{
global $elsector;
if (!is_null($elsector)){
$id_sub=$elsector;
$query= Doctrine_Query::create()
->select('a.id')
->from('SubsectorActividadTa8 a')
->innerJoin('a.Conflictos1 c')
->where('a.id_sector = ?', $id_sub);
return $query->execute();
}
}