0

非常感谢您阅读本文。我也在 Adob​​e 论坛上问过,但没有运气。

我正在为学校书籍构建一个小型图书馆应用程序。我创建了一个数据库,可以说 2 个表

Books ( ID_Book , Writer , Title , Copies) and
Loans ( ID_Book , Load_ID , Loan_Date ) etc

我已经正确使用 spry 轻松创建了一个表格,该表格在带有分页的表格中打印书单。

var ds1 = new Spry.Data.XMLDataSet("ajaxquery.php", "root/row", {sortOnLoad: "Writer", sortOrderOnLoad: "ascending"});
ds1.setColumnType("ID_Book", "number");
var pv1 = new Spry.Data.PagedView( ds1 ,{ pageSize:10 });
var pv1PagedInfo = pv1.getPagingInfo();
pv1.setColumnType("ID_Book", "number");

我已做出必要的声明以生成贷款数据集

var ds3 = new Spry.Data.XMLDataSet("ajaxallloans", "root/row", {sortOnLoad: "ID_Book", sortOrderOnLoad: "ascending"});
ds3.setColumnType("ID_Book", "number");
ds3.setColumnType("ID_Dan", "number");

如果 ID_Book 在 Loans 表中 - ds3,我想找到一种方法来更改 BOOKS 表的表行颜色。

表已创建

<div spry:region="pv1" id="bibliapv">

<div spry:state="loading" class="loading" >Loading...</div>  

<div spry:state="ready">
  <table>
    <tr >

      <th   width="75"  spry:sort="ID_Book"> Book No</th>
      <th   width="123" spry:sort="Writer">Writer </th>
etc...

    </tr>


    <tr spry:repeat="pv1" spry:select="mySelectClass" spry:hover="hover">
      <td >{ID_Book}</td>
      <td>{writer}</td>
  etc ..
  </tr>

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

再次感谢。迪诺斯 - 希腊

4

1 回答 1

0

再次感谢您的阅读。

我找到了一个基于从中得出的想法的解决方案

labs.adobe.com/technologies/spry/samples/data_region/CustomColumnsSample.html

我添加了以下代码:

  1. 创建了一个 CSS 规则

让我们说

.match {

background-color: #0CF;



}
  1. 在 spry:region 添加类 {cssrule} 后不久动态添加<tr class="{cssrule}" spry:repeat="pv1" spry:select="mySelectClass" spry:hover="hover">

3.

然后就在添加结束标记之前(您可以将其放在代码的前面)

 <script type="text/javascript">

  ds2.addObserver({

    onPostLoad:function( ds2, data ){

    var data = ds2.getData();

    var pv1data = pv1.getData();



for( var i = 0; i < pv1data.length; i++ )

  {            

      for (var j =0 ; j< data.length ; j++)

    {     if ((data[j].Writer).toString()== (pv1data[i].Writer).toString() )   //or whatever you like!

        {pv1data[i].cssrule="match";   }

    }

   }



  }

});
</script>
于 2012-03-15T20:39:11.960 回答