簡體   English   中英

為了將php外部數據添加到jquery中,如何更好地編寫此代碼?

[英]How would this be better written For adding php external data to a jquery select

我想使用phonegap提交一個應用程序,我的應用程序使用了很多php,我知道蘋果不太喜歡它,只是拒絕了該應用程序,並說最好擁有一個Web應用程序。 我這里有一個例子index.html

<!DOCTYPE HTML>
<html>
<head>
      <meta charset="utf-8" />
        <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
        <meta name="apple-mobile-web-app-capable" content="yes" />
        <meta name="apple-mobile-web-app-status-bar-style" content="black" />
        <title>
        </title>
        <link rel="stylesheet" href="css/logout-button.min.css" />
         <link rel="stylesheet" href="css/jquery.mobile-1.3.0.min.css" />
        <link rel="stylesheet" href="css/my.css" />
        <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
        </script>
        <script src="js/jquery.mobile-1.3.0.min.js"></script>
        <script src="js/jquery.cookies.2.2.0.min.js"></script>


<script type="text/javascript">
var uid = $.cookies.get( 'uid' );
 if(uid == null)
                 {
                window.location ='account-login.html'; }
                 else
                 { }
</script>
</head>

<body>
<div data-role="page" id="index4">

           <div data-theme="a" data-role="header">
        <a data-role="button" data-direction="reverse" data-rel="back" data-transition="slide"
         data-icon="arrow-l" data-iconpos="left" class="ui-btn-left">
            Back
        </a>
        <h3>
           Event Details
        </h3>
    </div>

         <div data-role="content">
             <form id="eventForm" name="eventForm">
                    <div data-role="fieldcontain">
                        <fieldset data-role="controlgroup">
                            <label for="event">
                                Event
                            </label>
                            <input name="eventname" id="eventname" placeholder="eventname" value="" type="text" />
                        </fieldset>
                    </div>
                    <div data-role="fieldcontain">
                        <fieldset data-role="controlgroup">
                            <label for="about">
                                About
                            </label>
                            <textarea name="about" id="about" placeholder="about" value=""></textarea>
                        </fieldset>
                    </div>
                    <div data-role="fieldcontain">
                    <label for="dates">
                                Choose Dates
                            </label>
                            <div id="with-altField"></div>
                            <input type="hidden" id="altField" name="dates">
                        </fieldset>
                    </div>
                    <div data-role="fieldcontain">
                        <fieldset data-role="controlgroup">
                            <label for="enddate">
                                End Date
                            </label>
                            <div id="with-altfield1"></div>
                            <input type="hidden" id="altField1" name="enddate">
                        </fieldset>
                    </div>
                    <div data-role="fieldcontain">
                        <script>
                            $.get('event-details.php', function(data){
                            $('#yourdiv').html(data);
                            });
                        </script>   
                        <div id="yourdiv"></div>
                    </div>
                    <div data-role="fieldcontain">
                        <label for="manual">Add Emails</label>
                        <textarea cols="40" rows="8" name="emails" id="emails"></textarea>
                    </div>
                        <input type="submit" value="Submit" id="submitEventButton">
                </form>
        </div>
</div>  
</body>
</html>

我在這里叫event-details.php

<?
require_once("../backend/functions.php");
dbconn();
                            $id = $CURUSER["id"];
                            $res = "SELECT username,email,status FROM users left join cal_contacts on cal_contacts.contactid = users.id WHERE cal_contacts.userid = $id";
                            $res1 = mysql_query($res);
                        ?>
                        <label for="select-choice-1" class="select">
                                Choose Contacts:
                            </label>
                            <select name="contacts[]" id="contacts" multiple="multiple" data-native-menu="false">
                        <?
                            while($row = mysql_fetch_array($res1))
                            { 
                            print "<option value=$row[email]>$row[email] ($row[status])</option>";
                            }
                        ?>
                        </select>
                        <?

我有通過php創建的選擇菜單。 我想知道是否還有另一種方法可以使完整的select html不必在php腳本上。 這意味着一旦提交我便很難更改我的應用程序,而且我相信蘋果會更輕松地接受它。

如果您的問題只是刪除HTML上的PHP處理,則可以將其作為Web服務移至其他位置,然后通過ajax請求獲得它。 然后,您可以僅使用json等來獲取數據並填充選擇菜單。

這是jquery文檔 關於如何發出ajax請求。

我在這里找到了一個教程,該教程在您想要實現的目標上似乎很相似。

如何為iOS應用編寫簡單的PHP / MySQL Web服務

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM