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を後日投稿する必要があると思いますstring(15)は、処理時の変数が整数ではなく、文字列「TEMPLATE_PARENT」であることを示しています

まだ修正していませんが、どこが間違っているのかがわかったので、続行するのが少し簡単になるはずです.

于 2013-06-10T08:42:04.467 に答える