0

我有一个整数被动态添加到表单中,初始表单加载了模板变量。

我要转换的部分是 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"
}

编辑:我刚刚意识到 string(15) 是原始值的字符串长度而不是父 ID,我可以在替换完成后延迟这个通过修改后的变量的功能吗?

Edit2:我在具体 5 中执行此操作并创建了一个新属性,允许为添加的每个选项选择父类别。

4

1 回答 1

0

我相信我需要在这里使用 Ajax 在以后发布 html 字符串(15)表示处理时的变量不是整数,而是字符串“TEMPLATE_PARENT”

我还没有修复它,但是现在我知道我哪里出错了,继续下去应该会容易一些。

于 2013-06-10T08:42:04.467 回答