使用Javascript动态地向文本字段添加内容

时间:2014-07-03 19:05:03

标签: javascript php html

所以这是我的问题。我有以下的javascript代码和HTML集。

应该发生的是,当您单击表单中的各种复选框时,脚本应该采用您选中的复选框的值并填写下面的文本字段,该字段具有类似的"名称&# 34;标识符。以下代码适用于所有值,但只有一个。值为#34;字符仅为空格的那个"不起作用。我尝试使用Javascript方法.Replace(" ", "-")来完成用连字符替换空格,但它似乎不起作用。由于HTML是通过PHP循环动态创建的,因此我无法添加所需的值并对所有内容进行硬编码。

有没有办法制作

JSFiddle - 完整的程序和HTML布局。

Javascript(点击JSFiddle链接查看整个结果)     

function autofill(ElementName) {
     //window.alert('You got this: ' + ElementName);

    if(document.getElementById('keyword-' + ElementName.toLowerCase()).checked == true) {
        document.getElementById('keyword-entry-' + ElementName.toLowerCase()).value = document.getElementById('keyword-' + ElementName.toLowerCase()).value;
    } else {
    document.getElementById('keyword-entry-' + ElementName.toLowerCase()).value = '';
    }
}
 // window.alert('This value is: ' + document.getElementById('keyword-ally').value.toLowerCase() );

//--> </script>

PHP用于为上述JScript创建HTML元素

<?php 
$keywords = array("Ally" , "Breaker" , "Character Only" , "Combo" , "Desperation" , "Item" , "Kick" , "Multiple" , "Powerful" , "Punch" , "Ranged" , "Reversal" , "Stance" , "Stun" , "Taunt" , "Terrain" , "Throw" , "Unique" , "Weapon");
$i =0;
foreach($keywords as $keyword_name) {

echo '<td style="width: 20%;">' . zen_draw_checkbox_field('ufs_keywords[]', $keyword_name, in_array($keyword_name, $pInfo->resources), '', 'id="keyword-' . str_replace(" ","-",strtolower($keyword_name)) . '"') . ' <label for="keyword-' . str_replace(" ","-",strtolower($keyword_name)) .'">' . $keyword_name . "</label><br />" . zen_draw_input_field('ufs_keywords_entry[]', '', 'id="keyword-entry-' . str_replace(" ","_",strtolower($keyword_name)) . '" style="width:100px; float: right;"') . "</td>" . "\n\n";
$i++;
echo ($i % 5 == 0 ? "</tr>\n\n<tr>" : "");
}

?>

0 个答案:

没有答案