2017-12-27 22 views
0

私は、必要に応じてカスタマイズされた混合コンテンツのセルを含むHTMLテーブル行を持っています。 HTMLテーブルにこの行を動的に追加したいと思います。しかし、エラーがjsにポップアップしています。PHPのHTMLテーブルにカスタムテーブル行を追加

function addRowtoTable(){ 
    $tblRow = '<tr> 
       <td><input type="checkbox" name="record"></td>  
       <td for="section"><select name=\'section\' id=\'section\' class=\'form-control\' >  
          <?php echo fill_sectionName($conn, $userRow[\'userName\']); ?></select></td> 
       <td for="fileRef"><input name ="fileRef" id="fileRef" class="form-control ui-autocomplete-input" autocomplete="on" placeholder="Enter File Reference"></td> 
       <td for="datepicker"><input class=\'form-control\' type="text" id="datepicker" placeholder="Mail Date"></td>     
       <td for="section"><?php echo fill_SecurityClass(); ?></td>  
       <td for="section"><?php echo fill_Precedence(); ?></td> 
       <td for="section"><?php echo fill_AppointmentList($conn); ?></td> 
       <td for="section"><input name ="address1" id="address1" class="form-control ui-autocomplete-input" autocomplete="on" placeholder="Enter Stn Name"></td> 
       <td for="section"><?php echo fill_ModeOfDespatch(); ?></td> 
      </tr> 
        '; 
    return ($tblRow); 

を次のようにPHPの関数である

私はオートコンプリート、日付ピッカーを選択したオブジェクトを埋めるためのHTMLコード内でのPHPの関数を呼び出していますのでご注意ください。

次のように私のテーブルにこの<tr>を追加するためのJSスクリプトは次のとおりです。

$('#addtblRow').click(function() { 
    var tblRowNew = <?php echo addRowtoTable()?> ; 
    $("table tbody").append(tblRowNew); 
    }); 

私が得ることができる、ブラウザのエラーメッセージのスクリーンショットは、この

screenshot of the error message

のようなものですこのバグを解決するのに役立ちます。

答えて

0

私は別のアプローチをしました。 PHPで私は、変数

<?php 
    global $sectionNames; 
    global $Prece; 
    global $AddeeAppt; 
    global $ModesOfDes; 

    $sectionNames = fill_sectionName($conn, $userRow["userName"]); 
    $Prece = fill_Precedence(); 
    $AddeeAppt = fill_AppointmentList($conn); 
    $ModesOfDes = fill_ModeOfDespatch($conn); 
?> 

$("#addtblRow").click(function(){ 
     var numofrows = $("#num_rows").val(); 
     //window.alert(numofrows); 
     for(var i=0;i<numofrows ;i++){ 
     addNewRow(); 
     } 
    }); 

JSがこの

function addNewRow(){ 
    // 
    var trd=""; 
    trd +="<tr>"; 
    trd +="<td><input type='checkbox' name='record' class='form-control' ></td>"; 
    trd +="<td for='section'><select name='section' id='section' class='form-control'><?php echo $sectionNames ?> </select></td>"; 
    trd +="<td><input name='fileRef' class='form-control'></td>"; 
    trd +="<td for='datepicker'><input class='form-control' type='text' id='datepicker' placeholder='Mail Date'></td>"; 
    trd +="<td><?php echo $Prece ?></td>"; 
    trd +="<td><?php echo $AddeeAppt ?></td>"; 
    trd +="<td><input name='Address' class='form-control'></td>"; 
    trd +="<td><?php echo $ModesOfDes ?></td>"; 
    trd +="</tr>"; 
    $("table tbody").append(trd); 
} 

のように変更され、コードは私のために正常に動作を宣言しました。 PS:JSそのvar変数でキャリッジリターンを許可しません。したがって、すべてのHTML要素/タグは連続している必要があります。

関連する問題