0

私は自分のマスターページにjquery uiダイアログボックスを作成したので、私のサイトではすべてのページにダイアログボックスが表示されます。その後、次のページのダイアログボックスに移動すると、クリックイベントを使用してダイアログボックスを閉じます。次のページロード。これを行うためのアイデアを教えてください。これどうやってするの??

これは私のjqueryコードです:

 <script type="text/javascript">

  $(document).ready(function () {

  $("#dialog").dialog({ modal: false, resizable: false,
 bgiframe: true, draggable: false, position: ['right', 'bottom'], height: 150,     width:     300
 });


 $("#<%=btnCancel.ClientID%>").click(
  function () {
    $("#dialog").dialog('close');
 return false;
  });
   $("#<%=btnyes.ClientID%>").click(
  function () {
 var url = ".....";
  $(location).attr('href', url);
 return false
    });

      });
  </script>

これは私のデザインコードです:

  <div id="dialog" title="How Are We Doing?" style="width:500px; margin:0 0;"  background-color="white">

    <asp:Label ID="Label1" runat="server" Text="Please take a minute to give us your feedback…MICROMO.com’s User Feedback Program."></asp:Label>
    <asp:Button ID="btnyes" runat="server" Text="YES" BackColor="#0099cc" width="40px" ForeColor="White" Font-Bold="true" />
    <asp:Button ID="btnCancel" runat="server" Text="NO" width="40px" BackColor="#0099cc" ForeColor="White" Font-Bold="true"/>

     </div> 
4

1 に答える 1

0

JS Cookie 関数を使用して、Document.ready 関数の前にダイアログ ボックスを表示する条件を設定できます。以下に関数コードを示します。

<script type="text/javascript">          
$(document).ready(function ()  
{
var check=getCookie("clicked");alert(check);
if (check!='true' && check!="")
{    

$("#dialog").dialog({ modal: false, resizable: false,
bgiframe: true, draggable: true, position: ['right', 'bottom'], height: 150,     
width:     300

});

}

$("#<%=btnCancel.ClientID%>").click(

function () {
$("#dialog").dialog('close');
$("#dialog").dialog('disable');
return false;
});
$("#<%=btnyes.ClientID%>").click(
function () {
var url = "http://www.w3schools.com/jquery/jquery_intro.asp";
$(location).attr('href', url);  
setCookie("clicked",true,2);    
return false
});
});
</script>

Cookie Js ファイル

function setCookie(c_name,value,exdays)
{
var exdate=new Date();
exdate.setDate(exdate.getDate() + exdays);
var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString());
document.cookie=c_name + "=" + c_value;
}
function getCookie(c_name)
{
var i,x,y,ARRcookies=document.cookie.split(";");
for (i=0;i<ARRcookies.length;i++)
{
x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
x=x.replace(/^\s+|\s+$/g,"");
if (x==c_name)
{
return unescape(y);
}
}
}
于 2012-08-22T09:42:57.797 に答える