我正试图从GridView
单元中获取一个值,以更改嵌入PDF的来源。当单击GridView
每一行上的按钮时,我执行一个函数。
这是我到目前为止的代码:
<script>
function changepdf(pdf) {
var value = document.getElementById('<%= GridView1.ClientID %>').rows[pdf.rowIndex].cells[3].innerText;
var file = document.getElementById('pdf');
file.src = 'pdf/catalogosh.pdf#page=' + value + '&#toolbar=0&#view=fit';
return false;
}
</script>
当我完全像这样编写新的源代码时,JavaScript函数可以正常工作:
<script>
function changepdf(pdf) {
var file = document.getElementById('pdf');
file.src = 'pdf/catalogosh.pdf#page=4&#toolbar=0&#view=fit';
return false;
}
</script>
主要思想是更改PDF页面,并使用de GridView
中的值。
在此先感谢您的帮助。
答案 0 :(得分:1)
我已经解决了。我在这里将代码粘贴给尝试解决同一问题的任何人:
function changepdf(pdf) {
var row = pdf.parentNode.parentNode;
var rowIndex = row.rowIndex;
var value = document.getElementById('<%= GridView1.ClientID %>').rows[rowIndex].cells[2].innerText;
var file = document.getElementById('pdf');
file.src = 'pdf/catalogosh.pdf#page=' + value + '&#toolbar=0&#view=fit';
return false;
}
我的问题是rowIndex
。代码很糟糕,我得到了错误的值。
我添加了这两行来使它变得更好:
var row = pdf.parentNode.parentNode;
var rowIndex = row.rowIndex;
然后我得到这行的单元格值:
var value = document.getElementById('<%= GridView1.ClientID %>').rows[rowIndex].cells[3].innerText;