Javascript 还记得表单提交后出现错误时的Selectbox值吗
现在,如果我提交表单时出现错误,它只会显示有错误,而无需重新选择项目,就有错误,(该页面称为“更改项目”),在这里,您可以更改某个项目的值 另外,在我发布的图片中,你可以看到我特别输入了一个字符串“test”,其中应该有一个整数 我试过$(“#categorieSelect”).val($_POST['categorieSelect']);但它不起作用Javascript 还记得表单提交后出现错误时的Selectbox值吗,javascript,php,html,codeigniter,Javascript,Php,Html,Codeigniter,现在,如果我提交表单时出现错误,它只会显示有错误,而无需重新选择项目,就有错误,(该页面称为“更改项目”),在这里,您可以更改某个项目的值 另外,在我发布的图片中,你可以看到我特别输入了一个字符串“test”,其中应该有一个整数 我试过$(“#categorieSelect”).val($_POST['categorieSelect']);但它不起作用 <div id="project-wijzigen" class="form"> <h2> Wijzig
<div id="project-wijzigen" class="form">
<h2> Wijzig een project </h2>
<?php
echo form_open('c_admin/project'); //moet ge nog aanpassen
echo '<select id="categorieSelect" name="categorieSelect"></select>';
echo form_input('startdatum', set_value('startdatum'), 'placeholder="Startdatum"');
echo form_input('einddatum', set_value('einddatum'), 'placeholder="Einddatum"');
echo form_input('projecttitel', set_value('projecttitel'), 'placeholder="Projecttitel"');
echo form_input('ism', set_value('ism'), 'placeholder="In samenwerking met"');
echo form_input('projecttekst', set_value('projecttekst'), 'placeholder="Projecttekst"');
echo form_submit('submit', 'Project wijzigen');
echo form_close();
// --------------------------- Error checking/display
if(isset($projectWijzigenError)) // check of de variabele wel een waarde heeft (als je die zomaar oproept en hij moest leeg of NULL zijn dan krijg je een error op je pagina)
{
if ($projectWijzigenError=='true') // ALS er een error is, dan opent de form terug en worden errors weergegeven
{
$("#categorieSelect").val($_POST['categorieSelect']);
alert($_POST['categorieSelect']);
?>
<script>
alert($_POST['categorieSelect']);
$('#project-wijzigen').show();
$(this).toggleClass('close');
</script>
<?php
echo validation_errors('<p class="error">');
}
}
// -------------------------- End error checking/displaying
?>
</div>
Wijzig-een项目
您正在“混合”服务器端和客户端。使用javascript时,您在客户端编程,无法访问服务器中的变量。所以php代码不能在javascript上工作。
在
alert($_POST['categorieSelect']);
$(“#wijzigen项目”).show();
$(this.toggleClass('close');
您无法访问作为服务器变量的$\u POST
你应该这样做:
<?php echo '<input type="hidden" id="hidden-input" value="'.$_POST['categorieSelect'].'">'; ?>
然后,在脚本中:
<script> alert($('#hidden-input').val());
$('#project-wijzigen').show();
$(this).toggleClass('close');
</script>
alert($('#隐藏输入').val());
$(“#wijzigen项目”).show();
$(this.toggleClass('close');
您可以使用Codeigniter验证 客户端验证呢?你是什么意思?我对这一切一无所知:x$(“#分类选择”).val($(“#隐藏输入”).val();如果要替换行$(“#categorieSelect”).val($#u POST['categorieSelect']),则不会执行任何操作;通过$(“#categorieSelect”).val($(“#隐藏输入”).val());在您的代码中,它将不起作用。在这行代码中,您将客户端编程与服务器端编程混合在一起,如果(isset($projectWijzigenError)){if($projectWijzigenError=='true'){$(“#categorieSelect”).val($#POST['categorieSelect']);alert($#POST['categorieSelect']);…这将永远不会起作用。
<script> alert($('#hidden-input').val());
$('#project-wijzigen').show();
$(this).toggleClass('close');
</script>