0

Javascript で配列と文字列に対して getelementbyid を実行し、たとえば foo["dog"] x = getelementbyid(foo[0]+"food") のように null ではない変数として設定するにはどうすればよいでしょうか。

<script>
  var myrows = new Array();   

  $(function() {
    $("#check").click(function(){
      myrows=[]
      $(".head input:checked").not("#selectall").each(function(){
        myrows.push($(this).parent().attr("id"));
      }).value;

      alert(myrows);
    });   

    $("#subbut").click(function(){
      var x;
      var r=confirm("Are you sure you?");

      if (r==true){
        x="You pressed OK!";
      }else{
        Object.cancel;
      }

      **alert( myrows[0]+"servername" + " before" );

      for(var i =0; i< myrows.length; i++){
        alert(myrows[i] +"rootname" +" in loop" );
        var j= document.getElementById(xmyrows[i] +"rootname" );
        alert(j+" after call" );
        var y = document.getElementById(myrows[i]+"servername");

        document.getElementById("id_rootname").value= j.textContent;
        document.getElementById("id_servername").value= y.textContent ;**

        $.post($("#forms").attr("action"), $("#forms").serialize(), function(data) {

        });
      }
    });
  });

</script>
4

2 に答える 2

1

配列/文字列の問題が何であるかはよくわかりませんが、コメントからは、動的なフォーム送信を行う方法を探しているようです: Dan Davis は、彼のコメントでソリューションの基本とボルトを提供しています。動的に (更新なしで) 送信する必要があるフォームを作成し、iframe を作成してから、それぞれのフォームの target 属性をその iframe の ID に設定します。

<form id="form1" target="#form1Response">
    ...
</form>
<form id="form2" target="#form2Response">
    ...
</form>
<iframe id="#form1Response"></iframe>
<iframe id="#form2Response"></iframe>

load次に、サーバー応答コールバックをさまざまな iframe のイベントにアタッチする必要があります。ただし注意してください: 空の iframe でも load イベントが発生するため、コールバックで誤検知 (空の iframe コンテンツ) をフィルタリングする必要があります。

もう 1 つの注意点: サーバーが JSON で応答する場合、IE は、スクリプトがインターセプトする前に応答をファイルシステムに保存するようにユーザーに促します。 iframe の DOM に読み込まれます。

于 2013-07-22T14:45:03.453 に答える