簡體   English   中英

Codeigniter獲得a的值 <td> 元素onclick

[英]Codeigniter get the value of a <td> element onclick

當用戶單擊元素內的文本時,我試圖獲取表數據。 我嘗試了一些Java腳本,但無法獲取將其發送回控制器進行進一步處理的值。 如果您能幫助我,我將不勝感激。 我添加了必要的代碼供您查看我是否做錯了什么。

<div class="box-content">
                          <table id="suppliertable" class="table table-striped table-bordered bootstrap-datatable datatable">
                      <thead>
                          <tr>
                              <th>Supplier</th>
                              <th>Open Range</th>
                              <th>Fill Content</th>
                              <th>Total Match</th>
                          </tr>
                      </thead>   
                      <tbody>

                      <?php foreach($present_all_suppliers as $v): ?>
                              <tr>      
                                    <td class="center" style="color:#0c595b;"><?php echo $v->supplierCompany;?> </a> </td>
                                    <td class="center">70%</td>
                                    <td class="center">12%</td>
                                    <td class="center">82%</td>
                            </tr>
                    <?php endforeach; ?>


                    </tbody>
                  </table>            
                </div>

Java腳本:

document.getElementById ( "tdid" ).textContent
var tdElem = document.getElementById ( "tdid" );
var tdText = tdElem.innerText | tdElem.textContent;

您需要將數據從Javascript傳遞回控制器。 這意味着,當用戶單擊有問題的<td> ,必須將AJAX請求發送到適當的控制器,然后該控制器可以執行某些服務器操作或返回一些將由AJAX回調函數使用的數據。

這是一個示例: http : //www.w3schools.com/php/php_ajax_php.asp

這顯示了如何使用AJAX和PHP對HTML DOM對象進行動態更改。

這是關於onclick以及AJAX和PHP的關於stackoverflow的另一個問題: 在onClick HTML事件之后調用PHP函數

您需要學習的是AJAX,以及如果您想使頁面的外觀和風格更加現代(HTML5),如何構建應用程序以使用它。

這將需要一些漂亮的ajax和一個javascript附件。 希望這個例子會有所幫助。

http://jsfiddle.net/qpe2wrmt/1/

function addEventHandler(elem,eventType,handler){
    if (elem.addEventListener)
        elem.addEventListener(eventType,handler,false);
    else if (elem.attachEvent)
        elem.attachEvent ('on'+eventType,handler);
}

var items = document.getElementsByClassName("clickable");
i = items.length;
while(i--){
    (function(item){
        addEventHandler(item,"click",function(){
            // make your ajax call here
            window.alert("clicked on a thing: "+item.innerHTML);
        });
    })(items[i]);
}

1)在您想成為可疑對象的每個td中添加一個“ clickable”類

2)按類名遍歷所有可單擊的項,並為每個項分配一個事件處理程序。

3)單擊時發出XHR請求。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM