我有一个动态添加到表单中的整数,初始表单加载了模板变量。
我要转换的部分是template_parent,我知道.replace负责返回字符串但是是否可以将其转换为整数并将其保留在innerHTML中?
var number = parseInt(pVal);
var ts = 't' + new Date().getTime();
var template=document.getElementById('akSelectValueWrapTemplate');
var newRowEl=document.createElement('div');
newRowEl.innerHTML=template.innerHTML.replace(/template_clean/ig,ts).replace(/template_parent/ig,number).replace(/template/ig,val);
newRowEl.id="akSelectValueWrap_"+ts;
newRowEl.className='akSelectValueWrap';
$('#attributeValuesWrap').append(newRowEl);
我以为我可以使用php和intval()来获取值,但是当变成整数时,它变为0
我的php部分开始,
if ($v == 'TEMPLATE') {
$akSelectParentValue = 'TEMPLATE_PARENT';
$akSelectValueID = 'TEMPLATE_CLEAN';
$akSelectValue = 'TEMPLATE';
} else {
if ($v->getSelectAttributeOptionTemporaryID() != false) {
$akSelectValueID = $v->getSelectAttributeOptionTemporaryID();
} else {
$akSelectValueID = $v->getSelectAttributeOptionID();
}
$akSelectParentValue = $v->getSelectAttributeOptionParentValue();
$akSelectValue = $v->getSelectAttributeOptionValue();
}
if($akSelectParentValue>0){
//do stuff
}else{
//come back as string when new,
//var_dump($akSelectParentValue)
//string(15) "135"
}
编辑: 我刚刚意识到字符串(15)是原始值的字符串长度而不是父ID,我可以在更换完成后延迟通过修改后的变量的函数吗?
EDIT2: 我在具体的5中做了这个,并创建了一个新属性,允许为每个选项添加父类别。
答案 0 :(得分:0)
我相信我需要在这里使用Ajax在以后发布html字符串(15)表示处理时的变量不是整数,而是字符串“TEMPLATE_PARENT”
我还没有解决它,但是现在我知道我哪里出错了它应该更容易继续。