2

$('form').prop(name)フォーム内でその名前の入力を取得するために使用できることがわかりました。div次に、他のタグで実験しましたが、これはとでは機能しませんbody。現在、フォームが必要postgetどうか、または という名前の入力があるかどうかを判断する方法がありませんmethod。残念ながら、これは私のページの 1 つに当てはまります。

おまけ:フォーム内にaction名前が付けられた入力がある場合、フォームを取得できませんaction

<!doctype html>
<html lang="en">
<head>
    <title>jQuery.prop()</title>
    <script src="../../jquery-1.9.1.js"></script>
    <script>
    $(function() {
        var method = $('form').prop('method');
        console.log(method); // <select> element

        var form = $('form')[0];
        console.log(form.method); // <select> element

        $('form').prop('method', 'get');
        console.log(form.method); // still <select> element, but DOM inspector shows the form method is changed to "get"

        form.method='get';
        console.log(form.method); // still <select> element
    });
    </script>
</head>
<body>
    <form action="/Test/Create" method="post">
        <input type="text" name="content" value="" />
        <select name="method">
            <option value="phone">Phone</option>
            <option value="email">Email</option>
        </select>
    </form>
</body>
</html>

では、その名前の入力が内部にある場合、どうすれば form.method (またはアクション) を取得できますか?

4

3 に答える 3

4

attr質問を正しく理解していれば、jQueryの関数を使用できます。

$('form').attr('action');
$('form').attr('method');
于 2013-07-10T15:15:57.927 に答える
1

他の人が述べたように、属性はまだDOMにあります。Page Inspector または同様のツールでサンプルを開くと、 document.forms[0].attributes のマップに「アクション」キーと「メソッド」キーの両方があり、プレーンな Javascript を介してアクセスできることがわかります。それで:

document.forms[0].attributes['method'].value

または、次のように jQuery を介して:

$('form').attr('method');
于 2013-07-10T15:25:32.190 に答える
1

.attrjQueryで使用できるはずです:

var method = $('#myform').attr('method');
var action = $('#myform').attr('action');
于 2013-07-10T15:17:29.433 に答える