【问题标题】:How do you stop a php page from reloading and reloading its attributes?如何阻止 php 页面重新加载和重新加载其属性?
【发布时间】:2011-10-05 06:55:18
【问题描述】:

您好,我正在尝试将我的 HTML/PHP/JS/XML 页面迁移到一个 php 文件中。我能够分别使用这 4 个文件成功地制作我的应用程序,但是当我将它们放在一个文件中时,似乎我的 js 和 php 发生冲突,如果有一种方法我可以将单选按钮默认设置为无选项,因为我我猜这就是问题所在。

嗯,我已经解决了有关单选按钮的问题,无论如何我试图将它们全部放在一个页面上,因为我试图模仿本地程序的输出,当我看到输出时我意识到了这一点我的第一次尝试。所以我现在要做的是在运行 php 代码之后我想把它们放在一个 div 中,这样它们就不会到处乱飞了。我已经解决了这部分,但我现在的问题是当我在选项中选择下一个单选按钮时,除非我点击我的提交按钮,否则之前请求的结果仍然存在。我猜这与我在html正文中传递的js有关。尝试修复 js 中的 div 问题但是没问题,但它只显示了 div 一瞬间。

这是我的代码:

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title>Globe2Smac</title>
  <link rel="stylesheet" href="css/mycss.css" type="text/css">
  <script src="js/hide.js" type="text/javascript"></script>
  </head>
  <body onLoad="">
  <h2>Globe to SMAC Function</h2>
          <form method="post" action="">
          <div>
          <ul style="list-style:none">
              <li><input id="smember" type ="radio" name ="option" value = "SmacMembers" onChange="SMmember()" checked/>SMAC MEMBERS</li>
              <li><input  id="sbalance"type ="radio" name ="option" value = "SmacBalance" onChange="SMbalance()" checked/>SMAC BALANCE QUERY</li>
              <li><input id="saward" type ="radio" name ="option" value = "SmacAward" onChange="SMaward()" checked/>SMAC AWARD</li>
              <li><input id="sredemption" type ="radio" name ="option" value = "SmacRedeem" onChange="SMredeem()" checked/>SMAC REDEMPTION</li>
          </ul>
              <div>Globe XML RPC Request:</div>
              <div id="smmember" class="div-border" style="display:none"><textarea id="areamember" name="gmember" value="Member" spellcheck="false">
&lt;?xml version="1.0" encoding="UTF-8"?&gt;
<methodCall>
<methodName>smac.members</methodName>
<params>
<param>
<value>
<string>
&amp;lt;?xml version="1.0"?&amp;gt;
&amp;lt;globetosmac&amp;gt;
&amp;lt;functioncode&amp;gt;smac_members&amp;lt;/functioncode&amp;gt;
&amp;lt;cardnumber&amp;gt;8880999521960565&amp;lt;/cardnumber&amp;gt;
&amp;lt;transaction_id&amp;gt;12345678&amp;lt;/transaction_id&amp;gt;
&amp;lt;/globetosmac&amp;gt;
</string>
</value>
</param>
</params>
</methodCall></textarea></div>
              <div id="smbalancequery"class="div-border" style="display:none"><textarea id="areabalance" name="gbalance" value="Balance" spellcheck="false">
&lt;?xml version="1.0" encoding="UTF-8"?&gt;
<methodCall>
<methodName>smac.balance_query</methodName>
<params>
<param><value><string>
&amp;lt;?xml version="1.0"?&amp;gt;
&amp;lt;globetosmac&amp;gt;
&amp;lt;functioncode&amp;gt;smac_balance_query&amp;lt;/functioncode&amp;gt;
&amp;lt;cardnumber&amp;gt;8880999521960565&amp;lt;/cardnumber&amp;gt;
&amp;lt;transaction_id&amp;gt;1441795&amp;lt;/transaction_id&amp;gt;
&amp;lt;birthday&amp;gt;01011900&amp;lt;/birthday&amp;gt;   
&amp;lt;transactiondatetime&amp;gt;2011-09-16 13:43:58&amp;lt;/transactiondatetime&amp;gt;
&amp;lt;/globetosmac&amp;gt;
</string></value></param>
</params>
</methodCall>
</textarea></div>
              <div id="smaward" class="div-border"style="display:none"><textarea id="areaward" name="gaward" value="Award" spellcheck="false">
&lt;?xml version="1.0" encoding="UTF-8"?&gt;
<methodCall>
<methodName>smac.award_points</methodName>
<params>
<param>
<value>
<string>
&amp;lt;?xml version="1.0"?&amp;gt;
&amp;lt;globetosmac&amp;gt;
&amp;lt;functioncode&amp;gt;smac_award_points&amp;lt;/functioncode&amp;gt;
&amp;lt;cardnumber&amp;gt;8880999521060440&amp;lt;/cardnumber&amp;gt;
&amp;lt;transaction_id&amp;gt;1441795&amp;lt;/transaction_id&amp;gt;
&amp;lt;transaction_amount&amp;gt;100&amp;lt;/transaction_amount&amp;gt;
&amp;lt;transaction_code&amp;gt;OFLN-GLOBE&amp;lt;/transaction_code&amp;gt;
&amp;lt;transactiondatetime&amp;gt;2011-09-22 16:20:58&amp;lt;/transactiondatetime&amp;gt;
&amp;lt;/globetosmac&amp;gt;
</string>
</value>
</param>
</params>
</methodCall></textarea></div>
              <div id="smredemption" class="div-border"style="display:none"><textarea id="arearedeem" name="gredeem" value="Redeem" spellcheck="false">
&lt;?xml version="1.0" encoding="UTF-8"?&gt;
<methodCall>
<methodName>smac.redemption_points</methodName>
<params>
<param>
<value>
<string>
&amp;lt;?xml version="1.0"?&amp;gt;
&amp;lt;globetosmac&amp;gt;
&amp;lt;functioncode&amp;gt;smac_redemption_points&amp;lt;/functioncode&amp;gt;
&amp;lt;cardnumber&amp;gt;8880999521060440&amp;lt;/cardnumber&amp;gt;
&amp;lt;transaction_id&amp;gt;1441795&amp;lt;/transaction_id&amp;gt;
&amp;lt;transaction_amount&amp;gt;10&amp;lt;/transaction_amount&amp;gt;
&amp;lt;transaction_code&amp;gt;OFLN-GLOBE&amp;lt;/transaction_code&amp;gt;
&amp;lt;transactiondatetime&amp;gt;20110921 16:20:58&amp;lt;/transactiondatetime&amp;gt;
&amp;lt;/globetosmac&amp;gt;
</string>
</value>
</param>
</params>
</methodCall></textarea></div>
<div id="submit"><input type="submit" name="Submit" value="Submit Query"></div>
<div>Globe XML Response:</div>
<div class="div-border"><?php
  if($_POST['option'] == "SmacMembers"){
  $member = $_POST['gmember'];
  $URL = 'https://localhost/globe2smac-fh3/api/';
  $ch = curl_init($URL);
  //curl_setopt($ch, CURLOPT_URL, "https://localhost/globe2smac-fh3/api");
  curl_setopt($ch, CURLOPT_MUTE, 1);
  curl_setopt($ch, CURLOPT_USERPWD, "michael:kel");
  curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
  curl_setopt($ch, CURLOPT_POST, 1);
  curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/html'));
  curl_setopt($ch, CURLOPT_POSTFIELDS, $member);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 2);
  $MemResult = curl_exec($ch);
  curl_close($ch);
  }
  else if($_POST['option'] == "SmacBalance"){
  $balance= $_POST['gbalance'];
  echo $balance; 
  $URL = "https://localhost/globe2smac-fh3/api/";

  $ch = curl_init($URL);
  curl_setopt($ch, CURLOPT_MUTE, 1);
  curl_setopt($ch, CURLOPT_USERPWD, "michael:kel");
  curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
  curl_setopt($ch, CURLOPT_POST, 1);
  curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/xml'));
  curl_setopt($ch, CURLOPT_POSTFIELDS, "$balance");
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  $BalResult= curl_exec($ch);
  curl_close($ch);

  echo $output;

  }
  else if($_POST['option'] == "SmacAward"){
  $award=$_POST['gaward'];
  echo $award;
  $URL = "https://localhost/globe2smac-fh3/api/";

  $ch = curl_init($URL);
  curl_setopt($ch, CURLOPT_MUTE, 1);
  curl_setopt($ch, CURLOPT_USERPWD, "michael:kel");
  curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
  curl_setopt($ch, CURLOPT_POST, 1);
  curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/xml'));
  curl_setopt($ch, CURLOPT_POSTFIELDS, "$award");
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  $output = curl_exec($ch);
  curl_close($ch);

  echo $output;
  }
  else if($_POST['option'] == "SmacRedeem"){
  $redeem=$_POST['gredeem'];
  echo $redeem;
  $URL = "https://localhost/globe2smac-fh3/api/";

  $ch = curl_init($URL);
  curl_setopt($ch, CURLOPT_MUTE, 1);
  curl_setopt($ch, CURLOPT_USERPWD, "michael:kel");
  curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
  curl_setopt($ch, CURLOPT_POST, 1);
  curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/xml'));
  curl_setopt($ch, CURLOPT_POSTFIELDS, "$redeem");
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  $RedResult = curl_exec($ch);
  curl_close($ch);

  echo $output;
  }
  else{
  echo('Option not Found');
}
?></div>
              </div>
            </form>
      </body>
  </html>

将我的代码重新更新为:

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title>Globe2Smac</title>
  <link rel="stylesheet" href="css/mycss.css" type="text/css">
  <script src="js/hide.js" type="text/javascript"></script>
  </head>
  <body onLoad="siteLoad();">
  <h2>Globe to SMAC Function</h2>
          <form method="post" action="">
          <div>
          <ul style="list-style:none">
              <li><input id="smember" type ="radio" name ="option" value = "SmacMembers" onChange="SMmember()" />SMAC MEMBERS</li>
              <li><input  id="sbalance"type ="radio" name ="option" value = "SmacBalance" onChange="SMbalance()"/>SMAC BALANCE QUERY</li>
              <li><input id="saward" type ="radio" name ="option" value = "SmacAward" onChange="SMaward()"/>SMAC AWARD</li>
              <li><input id="sredemption" type ="radio" name ="option" value = "SmacRedeem" onChange="SMredeem()"/>SMAC REDEMPTION</li>
          </ul>
              <div>Globe XML RPC Request:</div>
              <div id="smmember" class="div-border" style="display:none"><textarea id="areamember" name="gmember" value="Member" spellcheck="false">
&lt;?xml version="1.0" encoding="UTF-8"?&gt;
<methodCall>
<methodName>smac.members</methodName>
<params>
<param>
<value>
<string>
&amp;lt;?xml version="1.0"?&amp;gt;
&amp;lt;globetosmac&amp;gt;
&amp;lt;functioncode&amp;gt;smac_members&amp;lt;/functioncode&amp;gt;
&amp;lt;cardnumber&amp;gt;8880999521960565&amp;lt;/cardnumber&amp;gt;
&amp;lt;transaction_id&amp;gt;12345678&amp;lt;/transaction_id&amp;gt;
&amp;lt;/globetosmac&amp;gt;
</string>
</value>
</param>
</params>
</methodCall></textarea></div>
              <div id="smbalancequery"class="div-border" style="display:none"><textarea id="areabalance" name="gbalance" value="Balance" spellcheck="false">
&lt;?xml version="1.0" encoding="UTF-8"?&gt;
<methodCall>
<methodName>smac.balance_query</methodName>
<params>
<param><value><string>
&amp;lt;?xml version="1.0"?&amp;gt;
&amp;lt;globetosmac&amp;gt;
&amp;lt;functioncode&amp;gt;smac_balance_query&amp;lt;/functioncode&amp;gt;
&amp;lt;cardnumber&amp;gt;8880999521960565&amp;lt;/cardnumber&amp;gt;
&amp;lt;transaction_id&amp;gt;1441795&amp;lt;/transaction_id&amp;gt;
&amp;lt;birthday&amp;gt;01011900&amp;lt;/birthday&amp;gt;   
&amp;lt;transactiondatetime&amp;gt;2011-09-16 13:43:58&amp;lt;/transactiondatetime&amp;gt;
&amp;lt;/globetosmac&amp;gt;
</string></value></param>
</params>
</methodCall>
</textarea></div>
              <div id="smaward" class="div-border"style="display:none"><textarea id="areaward" name="gaward" value="Award" spellcheck="false">
&lt;?xml version="1.0" encoding="UTF-8"?&gt;
<methodCall>
<methodName>smac.award_points</methodName>
<params>
<param>
<value>
<string>
&amp;lt;?xml version="1.0"?&amp;gt;
&amp;lt;globetosmac&amp;gt;
&amp;lt;functioncode&amp;gt;smac_award_points&amp;lt;/functioncode&amp;gt;
&amp;lt;cardnumber&amp;gt;8880999521060440&amp;lt;/cardnumber&amp;gt;
&amp;lt;transaction_id&amp;gt;1441795&amp;lt;/transaction_id&amp;gt;
&amp;lt;transaction_amount&amp;gt;100&amp;lt;/transaction_amount&amp;gt;
&amp;lt;transaction_code&amp;gt;OFLN-GLOBE&amp;lt;/transaction_code&amp;gt;
&amp;lt;transactiondatetime&amp;gt;2011-09-22 16:20:58&amp;lt;/transactiondatetime&amp;gt;
&amp;lt;/globetosmac&amp;gt;
</string>
</value>
</param>
</params>
</methodCall></textarea></div>
              <div id="smredemption" class="div-border"style="display:none"><textarea id="arearedeem" name="gredeem" value="Redeem" spellcheck="false">
&lt;?xml version="1.0" encoding="UTF-8"?&gt;
<methodCall>
<methodName>smac.redemption_points</methodName>
<params>
<param>
<value>
<string>
&amp;lt;?xml version="1.0"?&amp;gt;
&amp;lt;globetosmac&amp;gt;
&amp;lt;functioncode&amp;gt;smac_redemption_points&amp;lt;/functioncode&amp;gt;
&amp;lt;cardnumber&amp;gt;8880999521060440&amp;lt;/cardnumber&amp;gt;
&amp;lt;transaction_id&amp;gt;1441795&amp;lt;/transaction_id&amp;gt;
&amp;lt;transaction_amount&amp;gt;10&amp;lt;/transaction_amount&amp;gt;
&amp;lt;transaction_code&amp;gt;OFLN-GLOBE&amp;lt;/transaction_code&amp;gt;
&amp;lt;transactiondatetime&amp;gt;20110921 16:20:58&amp;lt;/transactiondatetime&amp;gt;
&amp;lt;/globetosmac&amp;gt;
</string>
</value>
</param>
</params>
</methodCall></textarea></div>
<div id="submit"><input type="submit" name="Submit" value="Submit XML Request"></div>
<div>Globe XML Response:</div>
<div class="div-border"><?php
  if($_POST['option'] == "SmacMembers"){
  $member = $_POST['gmember'];
  $URL = 'https://localhost/globe2smac-fh3/api/';
  $ch = curl_init($URL);
  //curl_setopt($ch, CURLOPT_URL, "https://localhost/globe2smac-fh3/api");
  curl_setopt($ch, CURLOPT_MUTE, 1);
  curl_setopt($ch, CURLOPT_USERPWD, "michael:kel");
  curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
  curl_setopt($ch, CURLOPT_POST, 1);
  curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/html'));
  curl_setopt($ch, CURLOPT_POSTFIELDS, $member);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 2);
  $MemResult = curl_exec($ch);
  curl_close($ch);
  echo $MemResult;
  }
  else if($_POST['option'] == "SmacBalance"){
  $balance= $_POST['gbalance'];
  $URL = "https://localhost/globe2smac-fh3/api/";

  $ch = curl_init($URL);
  curl_setopt($ch, CURLOPT_MUTE, 1);
  curl_setopt($ch, CURLOPT_USERPWD, "michael:kel");
  curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
  curl_setopt($ch, CURLOPT_POST, 1);
  curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/xml'));
  curl_setopt($ch, CURLOPT_POSTFIELDS, "$balance");
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  $BalResult= curl_exec($ch);
  curl_close($ch);
  echo $BalResult;

  }
  else if($_POST['option'] == "SmacAward"){
  $award=$_POST['gaward'];
  echo $award;
  $URL = "https://localhost/globe2smac-fh3/api/";

  $ch = curl_init($URL);
  curl_setopt($ch, CURLOPT_MUTE, 1);
  curl_setopt($ch, CURLOPT_USERPWD, "michael:kel");
  curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
  curl_setopt($ch, CURLOPT_POST, 1);
  curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/xml'));
  curl_setopt($ch, CURLOPT_POSTFIELDS, "$award");
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  $Awresult= curl_exec($ch);
  curl_close($ch);

  echo $Awresult;
  }
  else if($_POST['option'] == "SmacRedeem"){
  $redeem=$_POST['gredeem'];
  echo $redeem;
  $URL = "https://localhost/globe2smac-fh3/api/";

  $ch = curl_init($URL);
  curl_setopt($ch, CURLOPT_MUTE, 1);
  curl_setopt($ch, CURLOPT_USERPWD, "michael:kel");
  curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
  curl_setopt($ch, CURLOPT_POST, 1);
  curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/xml'));
  curl_setopt($ch, CURLOPT_POSTFIELDS, "$redeem");
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  $RedResult = curl_exec($ch);
  curl_close($ch);

  echo $RedResult;
  }
  else{
  echo('Processing Requests...');
}
?></div>
              </div>
            </form>
      </body>
  </html>

【问题讨论】:

  • 移除'checked'属性?抱歉,我不太清楚问题出在哪里

标签: php javascript html xml


【解决方案1】:

现在您已将所有单选按钮设置为选中;

<input type="radio" ... checked />

首先正确的语法是:

<input type="radio" ... checked="checked" />

此外,请确保仅选中一个单选按钮(它的性质是单选按钮 :))或使用复选框

只是一个问题;为什么要将所有内容合并到一个文件中?为了可维护性,大多数时候分离代码是一个不错的主意!

【讨论】:

  • 我在帖子中包含了对您问题的回复,因为我没有足够的字符来将其写为评论 XD。
猜你喜欢
  • 2019-07-13
  • 1970-01-01
  • 2014-02-05
  • 2020-09-05
  • 2013-08-18
  • 2021-03-28
  • 1970-01-01
  • 2013-10-26
  • 1970-01-01
相关资源
最近更新 更多