使用加载时的Codeigner动态javascript->看法
Codeigniter dynamic javascript when using load->view
我有一个带有«newInput»按钮的表单,当我点击它时,它会在javascript中动态添加新的输入。
当我的表单出现错误时,我会用表单重新加载视图。这很正常,但。。因为我使用动态javascript添加新输入,所以在重新加载时,所有添加的输入都会被删除。。
有什么我能做的吗?
这是我观点的一个例子。tpl:
<input type="text" placeholder="ex: cerise"
onfocus="javascript:autoComplet('jigd1', '{site_url('recettes/getIngredient')}')" value="{set_value('igd[]')}" id="jigd1" name="igd[]"/>
{form_error('igd[]')}
我添加了js文件的部分代码
var cpt=1;
function addField(uriIngredient, uriLabel) {
try
{
cpt=cpt+1;
var inputIgd = document.createElement('input'),
button = document.createElement('input'),
div = document.createElement('div'),
inputIgd.setAttribute('type','text');
inputIgd.setAttribute('name','igd[]');
inputIgd.setAttribute('id','jigd'+cpt);
button.setAttribute('type','button');
button.setAttribute('onclick','javascript:supField("igd'+cpt+'")');
button.setAttribute('value','Supprimer');
div.setAttribute('id','igd'+cpt);
div.appendChild(inputIgd);
div.appendChild(button);
document.getElementById("listIgd").appendChild(div);
...
由于您动态地将新的输入/按钮附加到dom,而不是通过ajax调用/提交表单来保存其状态,因此在重新加载页面后无法保留输入/按钮。
最好使用localStorage来保存先前添加的input/buttom的信息。
PS:由于您还没有添加任何您尝试过的代码,所以很难用特定的代码来解释localStorage。
一旦追加,就将表单的状态添加到localStorage中,加载页面时,查找localStorage以检查以前添加的输入您可以将项目设置为localStorage:
window.localStorage.setItem('key','value')
你可以这样检索它们:
window.localStorage.getItem('key')
相关文章:
- 为什么要使用0>javascript中的0
- 可以<脚本类型=“;text/javascript”>window.location=“/"</
- 图像可以从源<img src=""/>.TEXT可以在没有javascript的情况下从外部
- W3验证器->使用<脚本类型=“;text/javascript”>在html的正文中
- jQuery/Javascript>on单击将文本放置在最后一个已知的光标位置
- 在HTML中嵌套引号>JavaScript>WebForms或如何在JavaScript方法中调用.NET方
- 使用加载时的Codeigner动态javascript->看法
- JavaScript>on更改输入&选择更新文本区域
- javascript->php加密解密-需要澄清和方法请
- Titanium SDK:JavaScript->滚动功能不起作用
- 运动>Javascript>Hamming练习:获得'undefined不是函数'错误
- Javascript>操作员未在Extension中工作
- Java/Javascript->多个用户在同一个sql数据源上工作,必须在前端保持一致
- Javascript-->iframe使用postMessage方法调整大小
- php heredoc--不回显'<脚本类型=“;text/javascript”>'
- <脚本类型='text/javascript'>并且<脚本>
- Youtube嵌入有错误的开始时间<iframe><javascript>
- <脚本类型=";text/javascript">进入iframe
- Javascript>将结果形成为";记住";用户>避免两次展示形式
- 未定义使用Javascript->Actionscript