2011-07-18 14 views
0

フォーム内の2つの要素上で、私はファイアバグで「未定義」を受け取りました。私はエラーを追跡しようとしましたが、レンガの壁を打ち続けています。エラーのある領域の1つはdivIdブロックにあり、もう1つはフォームの#companyです。誰かが自分のコードをチェックしてエラーを指摘できるなら、私は感謝します。おかげjquery postがfirebugで定義されていません

// Function to add box 

function addbox() { 

    $("#boxform").dialog({ 
     autoOpen: false, 
     resizable: true, 
     modal: true, 
     title: 'Submit a box intake request', 
     width: 470, 
     beforeclose: function (event, ui) { 
      $("#addbox").html(""); 
      $("#divId").html(""); 

     } 

    }); 

    $('#boxsubmit').click(function() { 

     var company = $('.company').val(); 
     var box = $('.box').val(); 
     var service = $('#service').val(); 
     var authorised = $('.authorised').val(); 
     var address = $('.address').val(); 
     var data = 'company=' + company + '&box=' + box + '&authorised=' + authorised + '&service=' + service + '&address=' + address; 
     $.ajax({ 
      type: "POST", 
      url: "boxesadd.php", 
      data: data, 
      success: function (data) { 
       $("#boxform").get(0).reset(); 
       $('#addbox').html(data); 
       //$("#form").dialog('close'); 
       $("#flex1").flexReload(); 

      } 
     }); 
     return false; 

    }); 

    $("#boxform").dialog('open'); 

} 

HTML

<script language="javascript" type="text/javascript"> 
     $(function() { 
    $("#company").live('change', function() { if ($(this).val()!="") 
    $.get("../../getOptions.php?customer=" + $(this).val(), function(data) { 
    $("#divId").html(data); }); }); 
     }); 
</script 

<form id="boxform" method="post" class="webform" name="boxform" /> 

     <label for="company">Select a Company:</label> 
     <select name="company" id="company" /> 
      <option SELECTED VALUE="">Select a Company</option> 
      <?php 
      do { 
      ?> 
      <option value="<?php echo $row_Recordsetcust['customer']?>"><?php echo $row_Recordsetcust['customer']?></option> 
      <?php 

      } 
      while ($row_Recordsetcust = mysql_fetch_assoc($Recordsetcust)); 
      $rows = mysql_num_rows($Recordsetcust); 
      if($rows > 0) 

     { 
      mysql_data_seek($Recordsetcust, 0); 
      $row_Recordsetcust = mysql_fetch_assoc($Recordsetcust); 
        } 

      ?> 
      </select> 

      <!--- displays the address from the change function --> 
      <div id="divId"></div> 

答えて

4

<form id="boxform" method="post" class="webform" name="boxform"> 

<select name="company" id="company" /> 

<form id="boxform" method="post" class="webform" name="boxform" /> 

を変更してみてください

var company = $('#company').val(); 
+0

ありがとうございます。 divIdにあるアドレスの定義されていない部分をどのようにトレースするのですか? – bollo

+0

マークアップがなければ、私は確かに言うことはできませんが、あなたも同じ問題を抱えているかもしれません。 css(およびjqueryセレクタ)では、ドット( '.')はクラス値用で、ハッシュ('# ')はid値用です。 '.address'を問い合わせているので、マークアップに' class = 'address''がなければ、それは見つからないでしょう。 –

+0

joeshmoアドレスは、私のHTMLコードのスクリプトに基づいてPHPによって作成されます。どこにPHPスクリプトを投稿して表示できますか?ありがとう – bollo

1

<select name="company" id="company" />

<select name="company" id="company"> 

および

var company = $('.company').val(); 

<select name="company" id="company"> は、タグはまた、正しく閉じられていない構成であるべきです。

+0

助けてくれてありがとう – bollo

1

#boxsubmitclickハンドラでは、#companyのハッシュの代わりにドットを使用します。

変更

var company = $('.company').val(); 

var company = $('#company').val(); 

へと自己を削除近い/非空要素について。

+0

助けてくれてありがとう – bollo

関連する問題