0

私は Objective-C で Mac アプリを作成しています。Web サイトでフォームを送信する (ボタンを押す) ことができるようにする必要がありますが、ユーザーがしなければならないことは、フォームに関連する時間を提供することだけです。

ウェブサイトのコードは次のとおりです。

<td class=t_h>07:16</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td class=t_s  height='24'>
<form method="POST" action="members_booking.php?operation=member_booking_form" onSubmit="return ValidateMemberBookNow(this)">
<INPUT NAME=double_click TYPE=hidden>
<INPUT NAME=course_id TYPE=hidden VALUE="1">
<INPUT NAME=unique_id TYPE=hidden VALUE="230693">
<INPUT NAME=d_date    TYPE=hidden VALUE="2012-09-07">
<INPUT NAME=Booking_Operation TYPE=hidden VALUE="Book Casual">
<INPUT NAME=SubmitButton TYPE=submit VALUE="Book Now">
</form>
</td>
</tr>
<tr>
<td class=t_h>07:24</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td class=t_s  height='24'>
<form method="POST" action="members_booking.php?operation=member_booking_form" onSubmit="return ValidateMemberBookNow(this)">
<INPUT NAME=double_click TYPE=hidden>
<INPUT NAME=course_id TYPE=hidden VALUE="1">
<INPUT NAME=unique_id TYPE=hidden VALUE="230694">
<INPUT NAME=d_date    TYPE=hidden VALUE="2012-09-07">
<INPUT NAME=Booking_Operation TYPE=hidden VALUE="Book Casual">
<INPUT NAME=SubmitButton TYPE=submit VALUE="Book Now">
</form>
</td>
</tr>
<tr>
<td class=t_h>07:32</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td class=t_s  height='24'>
<form method="POST" action="members_booking.php?operation=member_booking_form" onSubmit="return ValidateMemberBookNow(this)">
<INPUT NAME=double_click TYPE=hidden>
<INPUT NAME=course_id TYPE=hidden VALUE="1">
<INPUT NAME=unique_id TYPE=hidden VALUE="230695">
<INPUT NAME=d_date    TYPE=hidden VALUE="2012-09-07">
<INPUT NAME=Booking_Operation TYPE=hidden VALUE="Book Casual">
<INPUT NAME=SubmitButton TYPE=submit VALUE="Book Now">
</form>
</td>
</tr>
<tr>

これらのブロックは最大 40 個まで存在できます。<td class=t_h>07:32</td>ユーザーが指定した時間です。その時間に関連付けられたボタンを自動的に押す必要があります。どのように?

よろしくお願いします!

4

1 に答える 1

1

これは、 jQueryが本領を発揮する一種の問題です。t_h基本的な考え方は、 textで class の要素を見つけることです07:32。次に、その親ノードで、form要素とsubmit()それを見つけます。

どうぞ:

function submitFormForTime(time){
    $(".t_h").each(function(i, obj){ // find each element with the class t_h
        if ($(this).text() != time) return; // not the right one
        $(this).parent().find("form").each(function(i, obj){
            obj.submit(); // submit that form
        });
    });
}

submitFormForTime("07:32");

このスクリプトを Web サイトに追加します。Objective-C からこのスクリプトを呼び出すには、以下を参照してください。

上記のドキュメントから、以下は Objective-C から JavaScript 関数を呼び出します。

id win = [webView yourWebView]; // assumes your webView is called yourWebView
[win evaluateWebScript:@"submitFormForTime('07:32');"];
于 2012-08-30T19:21:50.700 に答える