将字符串转换为整数,在.replace()中使用


Convert String to Integer, used within a .replace()

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

我要转换的部分是一个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中这样做,并创建了一个新属性,它允许为每个添加的选项选择父类别。

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

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