0

私がやろうとしているのは、何らかの入力に基づいて新しいフォームを動的に作成することです。それが完了すると、フォームを送信するための送信ボタンが表示されます。

コードは次のとおりです。

function add(index_array) {
    //create the form
    var myform = document.createElement("form");
    myform.id="k_form"
    for ( i =0 ; i <index_array.length ; i ++)
    {
        var mytext = document.createElement("input");
        mytext.tpye="text";
        mytext.value=index_array[i];
        mytext.id=index_array[i];
        myform.appendChild(mytext); 

    }
    var mybutton = document.createElement("input");
    mybutton.type="button"
    mybutton.value="submit"
    myform.appendChild(mybutton);
    mydiv=document.getElementById("d_div");
    mydiv.appendChild(myform);
}

これによりフォームが作成されます。ユーザーが送信をクリックしたときに、このフォームへの入力を処理しようとしています。

どうやってやるの?

私は関数を呼び出すことができると思っていました

document.forms["myform"].submit() 

しかし、ユーザーが送信をクリックしたときにトリガーするにはどうすればよいですか?

助けてください :)

4

2 に答える 2

0

検証関数を追加します。

function add(index_array) {
var myform = document.createElement("form");
$(myform).attr('id',"k_form");
for ( i =0 ; i <index_array.length ; i ++)
{
    var mytext = document.createElement("input");
    $(mytext).attr('type','text').attr('value',index_array[i]).attr('id', index_array[i]);
    $(myform).append(mytext); 
}
var mybutton = document.createElement("input");
$(mybutton).attr('type','submit').attr('value','submit').attr('onclick','return display_textarea();');
$(myform).append(mybutton); 
mydiv=document.getElementById();
$("#d_div").append(myform);
}

function display_textarea(){
 var validation_success = true;
//do your validation here;
if(validation_success)
    return true;//submits the form
else {
     alert('validation not success');
    return false;// will not submit the form
    }
}
于 2012-11-22T06:20:36.567 に答える
0

add onclick="doSomeThing();" あなたのボタンの上に

そしてあなたのdoSomething関数を書​​いてください

于 2012-11-22T08:46:34.580 に答える