Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在JavaScript中创建一个隐藏字段_Javascript - Fatal编程技术网

在JavaScript中创建一个隐藏字段

在JavaScript中创建一个隐藏字段,javascript,Javascript,如何在JavaScript中将隐藏字段创建为特定的表单 <html> <head> <script type="text/javascript"> var a =10; function test() { if (a ==10) { // ... Here i need to create some hidden field for form named = chells }

如何在JavaScript中将隐藏字段创建为特定的表单

    <html>
    <head>
      <script type="text/javascript">
      var a =10;
function test() {
      if (a ==10)  {
        //  ... Here i need to create some hidden field for form named = chells
      }
}
      </script>  
    </head>   
    <body >
      <form id="chells" name="formsdsd">
      <INPUT TYPE=BUTTON OnClick="test();">
     </form> 
    </body>
    </html> 

var a=10;
功能测试(){
如果(a==10){
//…这里我需要为名为=chells的表单创建一些隐藏字段
}
}

您可以使用jquery动态创建元素

$('#form').append('<input type="hidden" name="fieldname" value="fieldvalue" />');
$('#form')。追加('');
或者其他方式

$('<input>').attr({
    type: 'hidden',
    id: 'fieldId',
    name: 'fieldname'
}).appendTo('form')
$('').attr({
键入:“隐藏”,
id:'字段id',
名称:“字段名”
}).appendTo('form')

我发现这是可行的:

var element1 = document.createElement("input");
element1.type = "hidden";
element1.value = "10";
element1.name = "a";
document.getElementById("chells").appendChild(element1);

可以使用此方法创建带/不带表单的隐藏文本字段。如果您需要表单,只需将object
status=true传递给表单即可

还可以添加多个隐藏字段。 这样做:

CustomizePPT.setHiddenFields( 
    { 
        "hidden" : 
        {
            'fieldinFORM' : 'thisdata201' , 
            'fieldinFORM2' : 'this3' //multiple hidden fields
            .
            .
            .
            .
            .
            'nNoOfFields' : 'nthData'
        },
    "form" : 
    {
        "status" : "true",
        "formID" : "form3"
    } 
} );
var CustomizePPT=new Object();
CustomizePt.setHiddenFields=函数(){
var请求=[];
var容器=“”;
log(参数);
请求=参数[0]。隐藏;
console.log(参数[0].hasOwnProperty('form');
if(参数[0]。hasOwnProperty('form')==true)
{
if(参数[0]。form.status==“true”){
var parent=document.getElementById(“容器”);
容器=document.createElement('form');
父.子(容器);
assign(容器,{'id':参数[0].form.formID});
}
}
否则{
容器=document.getElementById(“容器”);
}
//var container=document.getElementById(“容器”);
Object.key(请求).forEach(函数(elem)
{

如果($('#'+elem).length,因为脚本是在表单存在之前运行的-您想要的是不可能的。您可以在函数中编写脚本并将其分配给onload事件。您的HTML也有一些错误,请参见表单集合比getElementById更适合命名表单,这一切都取决于JS与DOM loadi的执行顺序ng,但本质上这是正确的方法,但我只是尝试使用它,说表单元素为null,正如David指出的,请确保在加载DOM后执行此操作。尝试对初学者使用onload事件。在同一点上..document.chells工作,但document.getElementById(chells)返回null。会有什么问题。如何重新选择我发现了问题。名称和id之间的区别
CustomizePPT.setHiddenFields( 
    { 
        "hidden" : 
        {
            'fieldinFORM' : 'thisdata201' , 
            'fieldinFORM2' : 'this3' //multiple hidden fields
            .
            .
            .
            .
            .
            'nNoOfFields' : 'nthData'
        },
    "form" : 
    {
        "status" : "true",
        "formID" : "form3"
    } 
} );