2011-08-19 89 views
0
<p>Today's Date: <?php echo $date; ?></p> 
<p>Are you applying for a day, evening, or weekend class?</p> 

<select name="date" id="wclass"> 
<option value="day">day</option> 
<option value="evening">Evening</option> 
<option value="weekend">Weekend</option> 
</select> 


Program Start Date: 

<div id="dates"></div> 

<script language="javascript"> 
$(document).ready(function() { 

$("#wclass").change(function() 
{ 
    if($("#wclass").val() == 'day') 
    { 
     $('#dates').html('<select name="date">\ 
      <option value="date1"><?php echo $start1; ?></option>\ 
      <option value="date2"><?php echo $start2; ?></option>\ 
      <option value="date3"><?php echo $start3; ?></option>\ 
      <option value="date4"><?php echo $start4; ?></option>\ 
      <option value="date5"><?php echo $start5; ?></option>\ 
      <option value="date6"><?php echo $start6; ?></option>\ 
      <option value="date7"><?php echo $start7; ?></option>\ 
     </select>'); 
    } 
}); 
}); 
</script> 

所以我的問題是,我不能讓日期來了,列表不會顯示。如果我把listi放在自己身上,就像魅力一樣。有問題的JavaScript?PHP列表不會顯示在Javascript

這是瀏覽器獲得:

$('#dates').html('<select name="date">\ 
<option value="date1">Aug 11</option>\ 
<option value="date2">May 5</option>\ 
<option value="date3">June 6</option>\ 
<option value="date4">January 7</option>\ 
<option value="date5">April 5</option>\ 
<option value="date6">December 3</option>\ 
    <option value="date7">October 15</option>\ 
</select>'); 
+1

顯示我們產生實際的標記。瀏覽器很可能會在你嘗試構建的多行字符串文字中填滿換行符。清理解決方法:http://stackoverflow.com/questions/805107/multiline-strings-in-javascript/805755#805755 –

+0

該代碼來自他以前的問題:http://stackoverflow.com/questions/7126039/display-php -using-javascript –

+0

@Matt Ball - 我的錢反對這個問題。我在等待看到該標記,但我打賭$ start變量包含HTML字符的意外。 – Malvolio

回答

1

既然你正在收聽的change事件,您的名單將只顯示,如果你選擇eveningweekend,然後改回day

您可以強制初始負載的變化:

$("#wclass").change(function() 
{ 
    if($("#wclass").val() == 'day') 
    { 
     $('#dates').html('<select name="date">\ 
      <option value="date1"><?php echo $start1; ?></option>\ 
      <option value="date2"><?php echo $start2; ?></option>\ 
      <option value="date3"><?php echo $start3; ?></option>\ 
      <option value="date4"><?php echo $start4; ?></option>\ 
      <option value="date5"><?php echo $start5; ?></option>\ 
      <option value="date6"><?php echo $start6; ?></option>\ 
      <option value="date7"><?php echo $start7; ?></option>\ 
     </select>'); 
    } 
}); 
}).val('day'); 

還是用我給了你這裏,那麼第二個解決方案:Display php using javascript

+0

我確實改變它從白天到晚上到白天,它不會工作。 – Osman

+0

http://aliahealthcare.com/applicationapp.php你可以親眼看到 – Osman

+0

@ user860869你的語法錯誤:'$(document).ready(function(){'。第二個'{'是額外的,並且是什麼導致你的Javascript錯誤 –

0

你的字符串連接是錯誤的。試試這個

工作demo

$('#dates').html('<select name="date">'+ 
      '<option value="date1"><?php echo $start1; ?></option>'+ 
      '<option value="date2"><?php echo $start2; ?></option>'+ 
      '<option value="date3"><?php echo $start3; ?></option>'+ 
      '<option value="date4"><?php echo $start4; ?></option>'+ 
      '<option value="date5"><?php echo $start5; ?></option>'+ 
      '<option value="date6"><?php echo $start6; ?></option>'+ 
      '<option value="date7"><?php echo $start7; ?></option>'+ 
     '</select>'); 
+0

@ user860869 - 試試這個答案,你錯過了單引號,因爲字符串是不正確的,並且在頁面上必須有js錯誤。在控制檯 – ShankarSangoli

+0

試過這個,沒有工作,問題不在列表中,它讓它出現在html中 – Osman

+0

你在投票之前檢查了演示嗎? – ShankarSangoli