A-AA+then

เกี่ยวกับ Gmodal ครับ แนะนำผมทีครับ

1,381
var _modal = new GModal();
function doShow() {
    _modal.show("<div class='member-tooltip'><b>GModal</b> แสดง กล่องข้อความกลางจอภาพ<br /><br /><input type='button' value='Hide' onclick='doHide()' /> หรือ กด Esc เพื่อปิดหน้านี้</div>");
};
function doHide() {
  _modal.hide();
};

จากหน้านี้
http://www.goragod.com/knowledge-GAJAX%20%E0%B8%9A%E0%B8%97%E0%B8%97%E0%B8%B5%E0%B9%88%207.html

ไม่ทราบว่า จะเอา หน้าอื่น มาแสดงใน modal ได้หรือปล่าวครับ
อีกหน้าที่ว่าสมมุติว่า เป็นแบบนี้ครับ
http://www.goragod.com/knowledge-Listbox%20multi%20select%20%E0%B9%80%E0%B8%AB%E0%B8%A1%E0%B8%B7%E0%B8%AD%E0%B8%99%20Hotmail.html

เมื่อกดปุ่มอะไรสักอย่างแล้วปิด modal แล้ว นำค่าใน select box ข้างขวา มาใส่ใน text box หน้าหลัก

ช่วยผมทีครับ ขอบคุณมากครับ

7 ความคิดเห็น

ดูบทความครับ
1

ผมลอง

<div id="test">
<form id="form_test" method="post" action="select.php">
<table><tbody>
<tr>
<td><select class="list" id="userList" size="20" multiple="multiple">
<option value="1000click@gmail.com">1000click@gmail.com</option>
<option value="108bit.host@gmail.com">108bit.host@gmail.com</option>
<option value="1470700483@bu.ac.th">1470700483@bu.ac.th</option>
<option value="14707007483@bu.ac.th">14707007483@bu.ac.th</option>
<option value="16nightclub@gmail.com">16nightclub@gmail.com</option>
<option value="25162516@sanook.com">25162516@sanook.com</option>
<option value="48711066@utcc.ac.th">48711066@utcc.ac.th</option>
<option value="50funds@gmail.com">50funds@gmail.com</option>
<option value="9neo@live.com">9neo@live.com</option>
<option value="9peaks@gmail.com">9peaks@gmail.com</option>
<option value="zz__qq007@hotmail.com">zz__qq007@hotmail.com</option></select></td>
<td style="width:50px;text-align:center">
<input type="button" id="emailgroup_add" value="&gt;&gt;" />
<input type="button" id="emailgroup_remove" value="&lt;&lt;" />
<input type="button" id="emailgroup_clear" value="เคลียร์"/>
</td>
<td style="width:200px"><select id="memberList" size="20" multiple="multiple"></select></td>
</tr>
<tr><td colspan="3"><input type="submit" /></td></tr>
</tbody></table>
<input type="hidden" id="emailSelected" name="emailSelected" />
</form>

<script type="text/javascript">
/* ฟังก์ชั่นสำหรับย้ายรายการจาก listbox หนึ่ง ไปยังอีก listbox */
var doEmailGroupAction = function(event) {
 var input = GEvent.element(event);
 var ids = input.id.split('_');
 if(ids[1] == 'add' || ids[1] == 'remove' || ids[1] == 'clear') {
  var src = $E(ids[1] == 'add' ? 'userList' : 'memberList');
  var dest = $G(ids[1] == 'add' ? 'memberList' : 'userList');
  for(var i = src.options.length - 1 ; i >= 0 ; i--) {
   m = src.options;
   if (m.selected || ids[1] == 'clear'){
    n = $G(m).copy();
    if (dest.elem.options.length == 0) {
     dest.insert(n);
    } else {
     dest.elem.insertBefore(n.elem, dest.elem.options[0]);
    };
    src.removeChild(m);
   };
  };
 };
};

/*
ฟังก์ชั่นนี้ใช้เพื่ออ่านรายการต่างๆใน memberList
แล้วใส่ลงใน emailSelected (hidden text) โดยคั่นแต่ละรายการด้วย comma
เพื่อทำการ submit
*/

var doSubmit = function(event) {
    var memberList = $E('memberList');
    var result = new Array();
    for( var i = 0 ; i < memberList.options.length ; i++){
        result.push(memberList.options.value);
    };
    $E('emailSelected').value = result.join(',');
};

/* จัดการ event ของปุ่มต่างๆ */
$G('emailgroup_add').addEvent('click',doEmailGroupAction);
$G('emailgroup_remove').addEvent('click',doEmailGroupAction);
$G('emailgroup_clear').addEvent('click',doEmailGroupAction);
/* ดัก event submit */
$G('form_test').addEvent('submit',doSubmit);
</script>
</div>

แล้วเรียก modal ด้วย script

var data1=document.getElementById("test").innerHTML
modalDemo.show(data1);

มันก็แสดงได้ครับ แต่ ปุ่ม ต่างๆ มันไม่ทำงานอ่ะครับ ช่วยแนะนำผมหน่อยครับ ขอบคุณครับ
2

Javascript ไม่สามารถทำงานได้ในหน้าที่ถูก Ajax โหลดมาครับ

อ่านบทความอื่นๆบนเว็บประกอบกัน เพื่อแก้ไขครับ 
3

ผมเคยเห็น บทความ ที่ไหนสักแห่ง

header("content-type:text/javascript; charset=tis-620");
echo "alert('test');";

ทำแบบนี้ได้ด้วยครับ
ส่ง javascript กลับไปหน้าหลัก
4

5

ขอถามเพิ่มเติมอีกนิดครับ
แล้ว ถ้าหากว่า  จาก บทความนี้

การใช้งาน GModal ในการแสดง Popup เพื่อเลือกข้อมูล

เรา เรียก หน้า Gmodal โหลดขึ้นมาแบบ ajax อีก ทีได้มั้ยครับ

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="http://www.goragod.com/ajax/gajax.js"></script>
<script type="text/javascript">
    function doLoad(){
        new GAjax().send('test8.php',null,function(xhr){
           // alert(xhr.responseText); // ดูค่าที่ตอบกลับ
            $E('main_div').innerHTML = xhr.responseText;
            xhr.responseText.evalScript();
        });
    };
</script>

</head>
<body onLoad="doLoad();">
        <div style="padding:0px;" id="main_div" align="center"></div>

</body>

ผมลองแบบนี้แ้ล้ว ปุ่ม มันไม่ทำงานครับ ต้องขอโทษด้วยครับ ที่ถามเยอะ - -" อันปัญญาอันน้อยนิดครับ กำลังเร่งศึกษาครับ
6

คำตอบเดียวกันกับคำตอบก่อนหน้าแหละครับ แต่สามารถแก้ไขได้ครับ ถ้าใช้ GAJAX และ ทำตามบทความ

แนะนำให้อ่านบทความหลายๆอันประกอบกัน แล้วนำมาประยุกต์ใช้ครับ ผมไม่สามารถเขียนบทความให้กับทุกคนได้ รวมถึงไม่สามารถเขียนบทความ ที่สามารถแก้ปัญหาทุกอย่างให้กับทุกคนได้ครับ แต่ที่ผมพอจะทำได้ ก็คือเขียนบทความที่ทำงานได้และง่ายต่อการทำความเข้าใจครับ ที่เหลือก็อยู่ที่คนอ่านแหละครับ ที่จะรู้จักประยุกต์ใช้

การประยกต์ใช้นี่แหละครับ ที่จะเป็นเหตุผลหลักๆที่จะทำให้เราผ่านอุปสรรคได้ครับ ขอให้พยายามครับ อย่าเพิ่งท้อ
7
^