gpt4 book ai didi

javascript - cakephp javascript动态更新

转载 作者:行者123 更新时间:2023-11-30 06:40:24 24 4
gpt4 key购买 nike

都在创建一个 cakephp(使用 2.1.2)页面。我们提示用户输入他们之后有多少个字段(一个整数),然后我们希望页面对输入的数字使用 for 循环。

这是添加页面的代码

<h2>Please select how many fields you wish to add</h2></br>


<?php
print $this->Session->flash('flash', array('element' => 'alert'));

echo $this->Form->create('Field', array('action'=>'add'));

For(int i=0; i<'flash'; i++)
{
echo $this->Form->input('name',array('label'=>'Please Enter Field Name: ', 'type'=>'text'));
echo $this->Form->input('description',array('label'=>'Please Enter Field Description: ', 'type'=>'text'));
}
echo $this->Form->end('Click Here To Submit Template');

?>

这是警报的代码

<script type="text/javascript">
prompt('How many fields?','<?php print $message; ?>');
</script>

问题是我们如何使用 alert.ctp 创建一个变量,然后能够将该变量用于 for 循环以打印出接受用户输入的表单。

编辑:

Javascript 函数:

<script type="text/javascript">

var number_of_fields=prompt("How many fields?",'<?php print $message; ?>');
var field_html="";
for (i=0; i<number_of_fields; i++)
{
field_html +='<input type="text" name="data[FIELD]['+i+'][name]">';
}
$("#FORMID").append(field_html);

</script>

查看:

<?php
print $this->Session->flash('flash', array('element' => 'alert'));

echo $this->Form->create('Field', array('action'=>'add'));



echo $this->Form->end('Click Here To Submit Template');

?>

现在没有错误,但无法显示任何字段。我们在 View 中放置什么来打印字段(这将是更多的输入 - 因此用户可以创建一个字段)?

最佳答案

由于我们在 javascript 中获得了 no: of required 的值,我建议按照 cakephp 用于创建输入字段的约定在 javascript 中也创建字段。因此,您可以使用 javascript for 循环并将字段连接到 js 变量中,然后使用 javascript 将此 html 输入插入到表单中。

例如:

var number_of_fields=prompt("How many fields?",'<?php print $message; ?>');
var field_html="";
for (i=0; i<number_of_fields; i++)
{
field_html +='<input type="text" name="data[MODELNAME]['+i+'][name]">';
}
$("#FORMID").append(field_html);

我希望这是有道理的

关于javascript - cakephp javascript动态更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11716367/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com