같은 페이지내 레이아웃창에 값을 전달해서 처리하고자 합니다. 정보
같은 페이지내 레이아웃창에 값을 전달해서 처리하고자 합니다.
본문
상품리스트가 있다고 가정 합시다.
제품명, 가격, 날짜 이런식으로 1페이지당 10개씩 출력되는 페이지 입니다.
각 제품명에 마우스를 클릭하면 마우스 위치에 레이어창이 띄워 집니다. (form, table 바깥쪽에 <div로 이뤄진 창)
onclick 이벤트로 창을 띄우고 닫는 것 까지는 되는데 리스트 각 제품마다 고유 ID를 레이어창에 전달하려고 하니 잘 안되네요.
function na_show_layer(lname)
{
if (lname == '') return;
var div = eval("document.all.div_" + lname);
var layer = document.all ? document.all(lname).style : document.layers[lname];
var show = document.all ? 'block' : 'visible';
var hide = document.all ? 'none' : '+ '+ 'none';
if (na_show_layer.arguments.length <= 1)
layer.display = show;
else
layer.top = event.y - 10 - document.body.scrollTop;
layer.left = event.x - 10;
layer.show = (na_show_layer.arguments[1] == 0 ? show : hide);
}
////////////////// 창을 띄우는 부분 자바스크립트 일부 ////////////////////////
<table>
<from ..... >
<input type=button name=ord_bt value='배송' onclick="na_show_layer('layer1')"></td>
... </from>
///////////////////////// 창을 불러오는 리스트 상의 항목 //////////////////
<div id="layer1" style="width:850px; height:100px; margin-left:-900px; margin-top:-40px; position:absolute; z-index:3; display:none; background-color:656565;padding:10px;">
<div style="width:100%;padding:5px; background-color:white;">
<?=include("order_delay.php");?>
<input type=button class=button value="Close" onclick="na_hide_layer('layer1');">
</div>
</div>
/////////////////////////// 띄워지는 창 ////////////////////////////////////
include 되는 파일에 상품고유 ID를 넘겨 처리하고 싶은데.... 어떻게 전달 할 수 있을까요 ?
관련 자료나 소스를 알려 주실분의 귀한 정보 부탁드리고
자세히 알려 주시는 분께 최고의 행운을 빌어 드리겠습니다.
제품명, 가격, 날짜 이런식으로 1페이지당 10개씩 출력되는 페이지 입니다.
각 제품명에 마우스를 클릭하면 마우스 위치에 레이어창이 띄워 집니다. (form, table 바깥쪽에 <div로 이뤄진 창)
onclick 이벤트로 창을 띄우고 닫는 것 까지는 되는데 리스트 각 제품마다 고유 ID를 레이어창에 전달하려고 하니 잘 안되네요.
function na_show_layer(lname)
{
if (lname == '') return;
var div = eval("document.all.div_" + lname);
var layer = document.all ? document.all(lname).style : document.layers[lname];
var show = document.all ? 'block' : 'visible';
var hide = document.all ? 'none' : '+ '+ 'none';
if (na_show_layer.arguments.length <= 1)
layer.display = show;
else
layer.top = event.y - 10 - document.body.scrollTop;
layer.left = event.x - 10;
layer.show = (na_show_layer.arguments[1] == 0 ? show : hide);
}
////////////////// 창을 띄우는 부분 자바스크립트 일부 ////////////////////////
<table>
<from ..... >
<input type=button name=ord_bt value='배송' onclick="na_show_layer('layer1')"></td>
... </from>
///////////////////////// 창을 불러오는 리스트 상의 항목 //////////////////
<div id="layer1" style="width:850px; height:100px; margin-left:-900px; margin-top:-40px; position:absolute; z-index:3; display:none; background-color:656565;padding:10px;">
<div style="width:100%;padding:5px; background-color:white;">
<?=include("order_delay.php");?>
<input type=button class=button value="Close" onclick="na_hide_layer('layer1');">
</div>
</div>
/////////////////////////// 띄워지는 창 ////////////////////////////////////
include 되는 파일에 상품고유 ID를 넘겨 처리하고 싶은데.... 어떻게 전달 할 수 있을까요 ?
관련 자료나 소스를 알려 주실분의 귀한 정보 부탁드리고
자세히 알려 주시는 분께 최고의 행운을 빌어 드리겠습니다.
댓글 전체
각 제품명에 마우스를 클릭하면<---각 제품의 고유아이디를 호출함수 부분에 넣으면 됩니다
<input type=button name=ord_bt value='배송' onclick="na_show_layer('layer1', '아이디')">
전덜받는 함수는
function na_show_layer(lname, id)
여기 부터는 id를 어디에다 넣는다는것인지 설명이 없으니...
<input type=button name=ord_bt value='배송' onclick="na_show_layer('layer1', '아이디')">
전덜받는 함수는
function na_show_layer(lname, id)
여기 부터는 id를 어디에다 넣는다는것인지 설명이 없으니...
당연히 밑에 레이어에 전달되어야죠...
<div id="layer1" style="width:850px; height:100px; margin-left:-900px; margin-top:-40px; position:absolute; z-index:3; display:none; background-color:656565;padding:10px;">
<div style="width:100%;padding:5px; background-color:white;">
<?=include("order_delay.php");?>
<input type=button class=button value="Close" onclick="na_hide_layer('layer1');">
</div>
</div>
간단하게 하는 방법입니다. 저기 인크루드 되어있는 부분을 iframe으로 하세요
function na_show_layer(lname,id)
{
if (lname == '') return;
var div = eval("document.all.div_" + lname);
var layer = document.all ? document.all(lname).style : document.layers[lname];
var show = document.all ? 'block' : 'visible';
var hide = document.all ? 'none' : '+ '+ 'none';
if (na_show_layer.arguments.length <= 1)
layer.display = show;
else
layer.top = event.y - 10 - document.body.scrollTop;
layer.left = event.x - 10;
ifm.location.href='order_delay.php?id='+id; //추가된 타겟
layer.show = (na_show_layer.arguments[1] == 0 ? show : hide);
}
////////////////// 창을 띄우는 부분 자바스크립트 일부 ////////////////////////
<table>
<from ..... >
<input type=button name=ord_bt value='배송' onclick="na_show_layer('layer1','<?=id?>')"></td>
... </from>
///////////////////////// 창을 불러오는 리스트 상의 항목 //////////////////
<div id="layer1" style="width:850px; height:100px; margin-left:-900px; margin-top:-40px; position:absolute; z-index:3; display:none; background-color:656565;padding:10px;">
<div style="width:100%;padding:5px; background-color:white;">
<iframe name='frm' frameborder='0' src=''></iframe>
<input type=button class=button value="Close" onclick="na_hide_layer('layer1');">
</div>
</div>
/////////////////////////// 띄워지는 창 ////////////////////////////////////
프레임 넓이와 높이는 알아서 조절하세요
<div style="width:100%;padding:5px; background-color:white;">
<?=include("order_delay.php");?>
<input type=button class=button value="Close" onclick="na_hide_layer('layer1');">
</div>
</div>
간단하게 하는 방법입니다. 저기 인크루드 되어있는 부분을 iframe으로 하세요
function na_show_layer(lname,id)
{
if (lname == '') return;
var div = eval("document.all.div_" + lname);
var layer = document.all ? document.all(lname).style : document.layers[lname];
var show = document.all ? 'block' : 'visible';
var hide = document.all ? 'none' : '+ '+ 'none';
if (na_show_layer.arguments.length <= 1)
layer.display = show;
else
layer.top = event.y - 10 - document.body.scrollTop;
layer.left = event.x - 10;
ifm.location.href='order_delay.php?id='+id; //추가된 타겟
layer.show = (na_show_layer.arguments[1] == 0 ? show : hide);
}
////////////////// 창을 띄우는 부분 자바스크립트 일부 ////////////////////////
<table>
<from ..... >
<input type=button name=ord_bt value='배송' onclick="na_show_layer('layer1','<?=id?>')"></td>
... </from>
///////////////////////// 창을 불러오는 리스트 상의 항목 //////////////////
<div id="layer1" style="width:850px; height:100px; margin-left:-900px; margin-top:-40px; position:absolute; z-index:3; display:none; background-color:656565;padding:10px;">
<div style="width:100%;padding:5px; background-color:white;">
<iframe name='frm' frameborder='0' src=''></iframe>
<input type=button class=button value="Close" onclick="na_hide_layer('layer1');">
</div>
</div>
/////////////////////////// 띄워지는 창 ////////////////////////////////////
프레임 넓이와 높이는 알아서 조절하세요
실험결과 창이 뜨질 않네요..
아무튼 감사합니다.
아무튼 감사합니다.
닫기는 <input type=button class=button value="Close" onclick="na_hide_layer('layer1','0');">
아무거나 주시면 됩니다
아니면 여기다가
if(id=='0'){
ifm.location.href=''; //추가된 타겟
}else{
ifm.location.href='order_delay.php?id='+id; //추가된 타겟
}
이렇게 해도 되고요
아무거나 주시면 됩니다
아니면 여기다가
if(id=='0'){
ifm.location.href=''; //추가된 타겟
}else{
ifm.location.href='order_delay.php?id='+id; //추가된 타겟
}
이렇게 해도 되고요
감사합니다. 해보겠습니다.