Я занимаюсь разработкой контрольной панели для проекта, и у меня возник конфликт с некоторым моим кодом.Я использую jQuery, чтобы каждая ссылка вставляла содержимое запрашиваемой страницы в DIV.Этот код находится на странице index.php, поэтому он будет первым на странице, которая будет запущена, несмотря ни на что.На самом деле вы никогда не уходите от индекса.
$('a').live("click",function(){
var external = $(this).attr('class');
if (external == "externalLink") {
return true;
}
var page = $(this).attr('href');
if (!(page == "#") && (page)) {
$("#loading").fadeToggle("fast", "linear");
$("#split-view-right #content").load(page, function(){
var parentHeader = $("#split-view-right #content #parentHeader").html();
$("#split-view-right #header").html(parentHeader);
$("#loading").fadeToggle("fast", "linear");
});
}
return false;
});
В #header у меня также есть некоторый код, в том числе некоторые кнопки.Некоторые из них у меня есть просто ссылка на страницу, которая прекрасно работает, но некоторые мне нужно запустить скрипт.Когда я пытаюсь определить скрипт для запуска на одной из этих страниц, он не найдет кнопку, если я не запустил ее с «.live».Проблема в том, что когда я пытаюсь перейти на другую страницу после запуска этого сценария, он игнорирует гиперссылку и снова запускает этот код.Вот пример запускаемого кода.
$(function() {
$("#headerbutton").live('click', function() {
$("#loading").fadeToggle("fast", "linear");
var title = $("input#title").val();
var partnum = $("input#partnum").val();
var descript = $("textarea#descript").val();
var startprice = $("input#startprice").val();
var minprice = $("input#minprice").val();
var domship = $("input#domship").val();
var intship = $("input#intship").val();
var startdate = $("input#startdate").val();
var droprate = $("input#droprate").val();
var dataString = 'title='+title+'&partnum='+partnum+'&descript='+descript+'&startprice='+startprice+'&minprice='+minprice+'&domship='+domship+'&intship='+intship+'&startdate='+startdate+'&droprate='+droprate;
$.post("savenewproduct.php",
{ "title": title, "partnum": partnum, "descript": descript, "startprice": startprice, "minprice": minprice, "domship": domship, "intship": intship, "startdate": startdate, "droprate": droprate },
function(postdata){
$("#split-view-right #content").load('upload_images.php?id=' + postdata.newID, function(){
var parentHeader = $("#split-view-right #content #parentHeader").html();
$("#split-view-right #header").html(parentHeader);
$("#loading").fadeToggle("fast", "linear");
});
}, "json");
return false;
});
});
То, что я хотел бы попробовать (если нет лучшего решения), это сделать так, чтобы каждый раз, когда я запускаю «.load», яможно запустить скрипт .die, чтобы отменить предыдущие живые коды на этой странице.
Есть идеи?