버튼 클릭을 기반으로 PHP를 사용하여 즉시 jQuery를 사용하여 html 요소를 추가하려고 시도했지만 아무것도 표시되지 않습니다. 즉석에서 생성되기 때문에 카운터 변수를 사용하여 동적 html 요소의 id 및 name 속성 값을 유지하여 나중에 데이터베이스에 저장하는 동안 서로 구별 할 수 있도록했습니다.
다음은 코드입니다.
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<?php
if (isset($_POST['checkexistingopp']))
{
$sql = "select l.id as LinkId, o.id, concat(o.Opponenttype,' - ', o.OpponentName , ' - رقم المرجعي - ',o.Refnumber,' ',o.OpponentCaser) as Opponent ,l.case_id,l.opponent_id from wp_opponentcaselink l, wp_opponents o where o.id=l.opponent_id and l.case_id=".$_POST['case_id'];
//echo $sql;
if ($results = $wpdb->get_results( $sql))
{
$c=0;
$echomsg= "<script>
$(document).ready(function() { var str='';";
foreach ($results as $result){
$linkid=$result->LinkId;
$RefNumber=$result->refnumber;
$case_id=$result->case_id;
$opponent_id=$result->opponent_id;
$opponent=$result->Opponent;
$c=$c+1; //counter to differentiate names and ids of html elements
if (isset($opponent_id)) {
$echomsg.=" str=\"<br> <br><input type=\"hidden\" id=\"LinkId.$c.\" name=\"LinkId.$c.\" value=\"$linkid\" /> <p>Opponent No.$c.</p> <select id=\"opponent_id.$c.\" name=\"opponent_id.$c.\" class=\"form-control input sm select2\">.$OpponentOptions.
<option value=\"$opponent_id\" selected>$opponent</option>
</select>
$( \"#AppendForm\" ).append(str);";
}
}
$echomsg.= " });
</script>";
echo $echomsg;
//var_dump($echomsg);
}
}
?>
다음은 html 형식입니다.
<form role="form" method="post">
select case
<select id="case_id" name="case_id" class="form-control input sm select2" required>
<?php echo $options; ?>
</select>
<input type="submit" value="Check existing opponents" id="checkexistingopp" name="checkexistingopp" />
</form>
<form id="AppendForm" role="form" method="post" >
</form>
그러나 버튼을 클릭해도 아무 일도 일어나지 않습니다 누군가 어떤 해결책을 제안 할 수 있습니까? 미리 답변 해 주셔서 감사합니다
PHP가 양식 요소를 직접 렌더링하도록 만드는 것은 어떻습니까? 이 중 어떤 것도 JavaScript를 요구하지 않는 것 같습니다. Javascript / jQuery는이 상황에서 값을 추가하지 않습니다.
예 :
$echomsg = "";
if ($results = $wpdb->get_results( $sql))
{
$c = 0;
foreach ($results as $result)
{
$linkid = $result->LinkId;
$RefNumber = $result->refnumber;
$case_id = $result->case_id;
$opponent_id = $result->opponent_id;
$opponent = $result->Opponent;
$c++; //counter to differentiate names and ids of html elements
if (isset(opponent_id)) {
$echomsg .= '<br><br>
<input type="hidden" id="LinkId'.$c.'" name="LinkId'.$c.'" value="'.$linkid.'" />
<p>Opponent No'.$c.'</p>
<select id="opponent_id'.$c.'" name="opponent_id'.$c.'" class="form-control input sm select2">'.$OpponentOptions.'
<option value="$opponent_id" selected>'.$opponent.'</option>
</select>';
}
}
//....
?>
<form id="AppendForm" role="form" method="post">
<?php echo $echomsg; ?>
</form>
NB 어디에서 오는지 모르겠어요 $OpponentOptions
? 나는 이것이 당신의 스크립트 어딘가에서 일찍 설정되었다고 생각합니다. 다른 정보가 없으면 정확하고 의미있는 정보라고 가정하겠습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다