我面前有这个页面。我想要做的是当我按下按钮下一步或预览通过 AjAX 更改索引时。
根据图像,当我按下下一个图像按钮时,文本必须更改为“andreas”,如果我再次按下下一步,则更改为“NEWW”,然后更改为“apoel”,然后再次更改为“姓氏”。
按 ACTORS 链接时,我有此代码:
/* FOR THE ACTORS TAB */
litActors.Text = "";
actorsCmd = "SELECT actor_name,a.id_actor FROM actor a JOIN project_actor pa on a.ID_ACTOR = pa.ID_ACTOR WHERE ID_PROJECT = " + Request.QueryString["id"];
SqlCommand cmdActor = new SqlCommand(actorsCmd, con);
SqlDataReader reader;
try
{
reader = cmdActor.ExecuteReader();
while (reader.Read())
{
litActors.Text += "<li><a onclick=\"javascript:getSummary(" + reader.GetInt32(1).ToString() + ",'a');document.getElementById('projectNav').style.display = 'none';document.getElementById('left_right').style.display = 'inline-block';displayActor('" + reader.GetString(0) + "') \">" + reader.GetString(0) + "</a></li>";
}
}
catch (Exception err)
{
con.Close();
return;
}
上面代码的 html 表示是这样的(忽略那些 style.display。它们是用于界面的):
<ul class="slideShow actors">
<li><a onclick="javascript:getSummary(62,'a');document.getElementById('projectNav').style.display = 'none';document.getElementById('left_right').style.display = 'inline-block';displayActor('Name Surname') ">Name Surname</a></li>
<li><a onclick="javascript:getSummary(1,'a');document.getElementById('projectNav').style.display = 'none';document.getElementById('left_right').style.display = 'inline-block';displayActor('andreas') ">andreas</a></li>
<li><a onclick="javascript:getSummary(63,'a');document.getElementById('projectNav').style.display = 'none';document.getElementById('left_right').style.display = 'inline-block';displayActor('NEWW') ">NEWW</a></li>
<li><a onclick="javascript:getSummary(53,'a');document.getElementById('projectNav').style.display = 'none';document.getElementById('left_right').style.display = 'inline-block';displayActor('apoel') ">apoel</a></li>
</ul>
现在我的javascript函数是这样的:
function getSummary(id,type) {
if (id == "") {
document.getElementById("data").innerHTML = "";
return;
}
var xmlhttp;
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
}
else {// code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("data").innerHTML = xmlhttp.responseText;
}
}
if (type == 'a') {
xmlhttp.open("GET", "desciptionActorHelper.aspx?id=" + id, true);
} else if ...
xmlhttp.send();
}
function displayActor(nameActor) {
var btnActor = document.getElementById('displayMe'); btnActor.style.display = 'inline';
btnActor.innerHTML = "<a>ACTOR:</a> " + nameActor;
}
和我的下一个/上一个按钮:
litDescField.Text = "<span id='left_right'>" +
"<a><img src='../images/left-arrow.png' /></a>    " +
"<a><img src='../images/right-arrow.png' /></a>" +
"</span>";
有没有人知道一个好的和简单的方法来做到这一点?
因为我的想法很复杂,我什至不确定它们是否会起作用。
我正在考虑制作一个带有演员 ID 的表格(我必须运行一个查询来获取演员的数量和他们的 ID)和 onClick 的 next 或 prev 更改一个光标,说明您现在在表格中的位置。